Skip to main content
Version: v3

Validate Element

Sets information in the patch transform that determines if the transform applies to an installed product and what errors should be ignored when applying the patch transform.
Windows Installer references
Inner Text
IgnoreAddExistingRowYesNoTypeIgnore errors when adding existing rows. The default is 'yes'. 
IgnoreAddExistingTableYesNoTypeIgnore errors when adding existing tables. The default is 'yes'. 
IgnoreChangingCodePageYesNoTypeIgnore errors when changing the database code page. The default is 'no'. 
IgnoreDeleteMissingRowYesNoTypeIgnore errors when deleting missing rows. The default is 'yes'. 
IgnoreDeleteMissingTableYesNoTypeIgnore errors when deleting missing tables. The default is 'yes'. 
IgnoreUpdateMissingRowYesNoTypeIgnore errors when updating missing rows. The default is 'yes'. 
ProductIdYesNoTypeRequires that the installed ProductCode match the target ProductCode used to create the transform. The default is 'yes'. 
ProductLanguageYesNoTypeRequires that the installed ProductLanguage match the target ProductLanguage used to create the transform. The default is 'no'. 
ProductVersionEnumerationDetermines how many fields of the installed ProductVersion to compare. See remarks for more information. The default is 'Update'. This attribute's value must be one of the following:
Checks the major version.
Checks the major and minor versions.
Checks the major, minor, and update versions.
ProductVersionOperatorEnumerationDetermines how the installed ProductVersion is compared to the target ProductVersion used to create the transform. See remarks for more information. The default is 'Equal'. This attribute's value must be one of the following:
Installed ProductVersion < target ProductVersion.
Installed ProductVersion <= target ProductVersion.
Installed ProductVersion = target ProductVersion.
Installed ProductVersion >= target ProductVersion.
Installed ProductVersion > target ProductVersion.
UpgradeCodeYesNoTypeRequires that the installed UpgradeCode match the target UpgradeCode used to create the transform. The default is 'yes'. 

A transform contains the differences between the target product and the upgraded product. When a transform or a patch (which contains transforms) is applied, the following properties of the installed product are validated against the properties of the target product stored in a transform.

  • ProductCode
  • ProductLanguage
  • ProductVersion
  • UpgradeCode

Windows Installer simply validates that the ProductCode, ProductLanguage, and UpgradeCode of an installed product are equivalent to those propeties of the target product used to create the transform; however, the ProductVersion can be validated with a greater range of comparisons.

You can compare up to the first three fields of the ProductVersion. Changes to the fourth field are not validated and are useful for small updates. You can also choose how to compare the target ProductVersion used to create the transform with the installed ProductVersion. For example, while the default value of 'Equals' is recommended, if you wanted a minor upgrade patch to apply to the target ProductVersion and all older products with the same ProductCode, you would use 'LesserOrEqual'.

See Also
Wix Schema