WiX Database XML Schema

Elements: WiX Database

Elements

Name  Description 
AdminExecuteSequence   
AdminUISequence   
AdvertiseExecuteSequence   
AllocateRegistrySpace  Ensures the needed amount of space exists in the registry.
AppData  Optional way for defining AppData, generally used for complex CDATA.
AppId  Application ID containing DCOM information for the associated application GUID.

AppSearch  Uses file signatures to search for existing versions of products.
AssemblyName  The MsiAssemblyName table specifies the schema for the elements of a strong assembly cache name for a .NET Framework or Win32 assembly.

Billboard  Billboard to display during install of a Feature
BillboardAction  Billboard action during which child Billboards are displayed
Binary  Binary data used for CustomAction elements and UI controls.
BinaryRef  Used only for PatchFamilies to include only a binary table entry in a patch.
BindImage  Binds each executable or DLL that must be bound to the DLLs imported by it.
Category  Qualified published component for parent Component
CCPSearch  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
Class  COM Class registration for parent Component.
Column  Column definition for a Custom Table
ComboBox  Set of items for a particular ComboBox control tied to an install Property
ComplianceCheck  Adds a row to the CCPSearch table.
ComplianceDrive  Sets the parent of a nested DirectorySearch element to CCP_DRIVE.
Component  Component for parent Directory
ComponentGroup  Groups together multiple components to be used in other locations.
ComponentGroupRef  Create a reference to a ComponentGroup in another Fragment.
ComponentRef  Create a reference to a Feature element in another Fragment.
ComponentSearch  Searches for file or directory and assigns to value of parent Property.
Condition  Conditions for components, controls, features, and products.
Configuration  Defines the configurable attributes of merge module.
ConfigurationData  Data to use as input to a configurable merge module.
Control  Contains the controls that appear on each dialog.
CopyFile  Copy or move an existing file on the target machine, or copy a file that is being installed, to another destination.
CostFinalize  Ends the internal installation costing process begun by the CostInitialize action.
CostInitialize  Initiates the internal installation costing process.
CreateFolder  Create folder as part of parent Component.
CreateFolders  Creates empty folders for components that are set to be installed.
CreateShortcuts  Manages the creation of shortcuts.
Custom  Use to sequence a custom action.
CustomAction  Specifies a custom action to be added to the MSI CustomAction table.
CustomActionRef  This will cause the entire contents of the Fragment containing the referenced CustomAction to be included in the installer database.
CustomProperty  A custom property for the PatchMetadata table.
CustomTable  Defines a custom table for use from a custom action.
Data  Used for a Custom Table. Specifies the data for the parent Row and specified Column.
DeleteServices  Stops a service and removes its registration from the system.
Dependency  Declares a dependency on another merge module.
Dialog  Defines a dialog box in the Dialog Table.
DialogRef  Reference to a Dialog.
DigitalCertificate  Adds a digital certificate.
DigitalSignature  Adds a digital signature.
Directory  Directory layout for the product.
DirectoryRef  Create a reference to a Directory element in another Fragment.
DirectorySearch  Searches for directory and assigns to value of parent Property.
DirectorySearchRef  References an existing DirectorySearch element.
DisableRollback  Disables rollback for the remainder of the installation.
DuplicateFiles  Duplicates files installed by the InstallFiles action.
EmbeddedChainer   
EmbeddedChainerRef  Reference to an EmbeddedChainer element.
EmbeddedUI  Element value is the condition.
EmbeddedUIResource  Defines a resource for use by the embedded UI.
EnsureTable  Use this element to ensure that a table appears in the installer database, even if its empty.
Environment  Environment variables added or removed for the parent component.
Error   
Exclusion  Declares a merge module with which this merge module is incompatible.
ExecuteAction  Initiates the execution sequence.
Extension  Extension for a Component
ExternalFile  Contains information about specific files that are not part of a regular target image.
Family  Group of one or more upgraded images of a product.
Feature  A feature for the Feature table.
FeatureGroup  Groups together multiple components, features, and merges to be used in other locations.
FeatureGroupRef  Create a reference to a FeatureGroup in another Fragment.
FeatureRef  Create a reference to a Feature element in another Fragment.
File  File specification for File table, must be child node of Component.
FileCost  Initiates dynamic costing of standard installation actions.
FileSearch  Searches for file and assigns to fullpath value of parent Property
FileSearchRef  References an existing FileSearch element.
FileTypeMask  FileType data for class Id registration.
FindRelatedProducts  Runs through each record of the Upgrade table in sequence and compares the upgrade code, product version, and language in each row to products installed on the system.
ForceReboot  Prompts the user for a restart of the system during the installation.
Fragment  The Fragment element is the building block of creating an installer database in WiX.
Icon  Icon used for Shortcut, ProgId, or Class elements (but not UI controls)
IconRef  Used only for PatchFamilies to include only a icon table entry in a patch.
IgnoreModularization  This element has been deprecated.
IgnoreRange  Specifies part of a file that is to be ignored during patching.
IgnoreTable  Specifies a table from the merge module that is not merged into an .msi file.

Include  This is the top-level container element for every wxi file.
IniFile  Adds or removes .ini file entries.
IniFileSearch  Searches for file, directory or registry key and assigns to value of parent Property
InstallAdminPackage  Copies the product database to the administrative installation point. The condition for this action may be specified in the element's inner text.
InstallExecute  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallExecuteAgain  Runs a script containing all operations spooled since either the start of the installation or the last InstallExecute action, or InstallExecuteAgain action.
InstallExecuteSequence   
InstallFiles  Copies files specified in the File table from the source directory to the destination directory.
InstallFinalize  Marks the end of a sequence of actions that change the system.
InstallInitialize  Marks the beginning of a sequence of actions that change the system.
InstallODBC  Installs the drivers, translators, and data sources in the ODBCDriver table, ODBCTranslator table, and ODBCDataSource table.
InstallServices  Registers a service for the system.
InstallUISequence   
InstallValidate  Verifies that all costed volumes have enough space for the installation.
Instance  Defines an instance transform for your product.
InstanceTransforms  Use this element to contain definitions for instance transforms.
Interface  COM Interface registration for parent Typelib.
IsolateComponent  Shared Component to be privately replicated in folder of parent Component
IsolateComponents  Installs a copy of a component (commonly a shared DLL) into a private location for use by a specific application (typically an .exe).
LaunchConditions  Queries the LaunchCondition table and evaluates each conditional statement recorded there.
ListBox  Set of items for a particular ListBox control tied to an install Property
ListItem  The value (and optional text) associated with an item in a ComboBox, ListBox, or ListView.
ListView  Set of items for a particular ListView control tied to an install Property
Media  Media element describes a disk that makes up the source media for the installation.
Merge  Merge directive to bring in a merge module that will be redirected to the parent directory.
MergeRef  Merge reference to connect a Merge Module to parent Feature
MigrateFeatureStates  Used for upgrading or installing over an existing application.
MIME  MIME content-type for an Extension
Module  The Module element is analogous to the main function in a C program.
MoveFiles  Locates existing files on the system and moves or copies those files to a new location.
MsiPublishAssemblies  Manages the advertisement of CLR and Win32 assemblies.
MsiUnpublishAssemblies  Manages the unadvertisement of CLR and Win32 assemblies that are being removed.
MultiStringValue  Use several of these elements to specify each registry value in a multiString registry value.
ODBCDataSource  ODBCDataSource for a Component
ODBCDriver  ODBCDriver for a Component
ODBCTranslator  ODBCTranslator for a Component
OptimizeCustomActions  Indicates whether custom actions can be skipped when applying the patch.
Package  Properties about the package to be placed in the Summary Information Stream.
Patch  The Patch element is analogous to the main function in a C program.
PatchBaseline  Identifies a set of product versions.
PatchCertificates  Identifies the possible signer certificates used to digitally sign patches.
PatchCreation  The PatchCreation element is analogous to the main function in a C program.
PatchFamily  Collection of items that should be kept from the differences between two products.
PatchFamilyRef  This will cause the entire contents of the Fragment containing the referenced PatchFamily to be used in the process of creating a patch.
PatchFiles  Queries the Patch table to determine which patches are to be applied.
PatchInformation  Properties about the patch to be placed in the Summary Information Stream.
PatchMetadata  Properties about the patch to be placed in the PatchMetadata table.
PatchProperty  A property for this patch database.
PatchSequence  Sequence information for this patch database.
Permission  Sets ACLs on File, Registry, or CreateFolder.
ProcessComponents  Registers and unregisters components, their key paths, and the component clients.
Product  The Product element is analogous to the main function in a C program.
ProgId  ProgId registration for parent Component.
ProgressText   
Property  Property value for a Product or Module.
PropertyRef  Reference to a Property value.
ProtectFile  Specifies a file to be protected.
ProtectRange  Specifies part of a file that cannot be overwritten during patching.
Publish   
PublishComponents  Manages the advertisement of the components from the PublishComponent table.
PublishFeatures  Writes each feature's state into the system registry.
PublishProduct  Manages the advertisement of the product information with the system.
RadioButton  Text or Icon plus Value that is assigned to the Property of the parent Control (RadioButtonGroup).
RadioButtonGroup  Set of radio buttons tied to the specified Property
RegisterClassInfo  Manages the registration of COM class information with the system.
RegisterComPlus  Registers COM+ applications.
RegisterExtensionInfo  Manages the registration of extension related information with the system.
RegisterFonts  Registers installed fonts with the system.
RegisterMIMEInfo  Registers MIME-related registry information with the system.
RegisterProduct  Registers the product information with the installer.
RegisterProgIdInfo  Manages the registration of OLE ProgId information with the system.
RegisterTypeLibraries  Registers type libraries with the system.
RegisterUser  Registers the user information with the installer to identify the user of a product.
Registry   
RegistryKey  Used for organization of child RegistryValue elements or to create a registry key (and optionally remove it during uninstallation).
RegistrySearch  Searches for file, directory or registry key and assigns to value of parent Property
RegistrySearchRef  References an existing RegistrySearch element.
RegistryValue  Used to create a registry value. For multi-string values, this can be used to prepend or append values.
RemoveDuplicateFiles  Deletes files installed by the DuplicateFiles action.
RemoveEnvironmentStrings  Modifies the values of environment variables.
RemoveExistingProducts  Goes through the product codes listed in the ActionProperty column of the Upgrade table and removes the products in sequence.
RemoveFile  Remove a file(s) if the parent component is selected for installation or removal.
RemoveFiles  Removes files previously installed by the InstallFiles action.
RemoveFolder  Remove an empty folder if the parent component is selected for installation or removal.
RemoveFolders  Removes any folders linked to components set to be removed or run from source.
RemoveIniValues  Removes .ini file information specified for removal in the RemoveIniFile table if the component is set to be installed locally or run from source.
RemoveODBC  Removes the data sources, translators, and drivers listed for removal during the installation.
RemoveRegistryKey  Used for removing registry keys and all child keys either during install or uninstall.
RemoveRegistryValue  Used to remove a registry value during installation.
RemoveRegistryValues  Removes a registry value that has been authored into the registry table if the associated component was installed locally or as run from source, and is now set to be uninstalled.
RemoveShortcuts  Manages the removal of an advertised shortcut whose feature is selected for uninstallation or a nonadvertised shortcut whose component is selected for uninstallation.
ReplacePatch  A patch that is deprecated by this patch.
ReserveCost  Disk cost to reserve in a folder for running locally and/or from source.
ResolveSource  Determines the location of the source and sets the SourceDir property if the source has not been resolved yet.
RMCCPSearch  Uses file signatures to validate that qualifying products are installed on a system before an upgrade installation is performed.
Row  Row data for a Custom Table
ScheduleReboot  Prompts the user to restart the system at the end of installation.
SelfRegModules  Processes all modules listed in the SelfReg table and registers all installed modules with the system.
SelfUnregModules  Unregisters all modules listed in the SelfReg table that are scheduled to be uninstalled.
ServiceArgument  Argument used in ServiceControl parent
ServiceControl  Starts, stops, and removes services for parent Component.
ServiceDependency  Service or group of services that must start before the parent service.
ServiceInstall  Adds and removes services for parent Component.
SetDirectory  Sets a Directory to a particular value.
SetODBCFolders  Checks for existing ODBC drivers and sets the target directory for each new driver to the location of an existing driver.
SetProperty  Sets a Property to a particular value.
SFPCatalog  Adds a system file protection update catalog file
SFPFile  Provides a many-to-many mapping from the SFPCatalog table to the File table
Shortcut  Shortcut, default target is parent File, CreateFolder, or Component's Directory
Show   
StartServices  Starts system services.
StopServices  Stops system services.
Subscribe  Sets attributes for events in the EventMapping table
Substitution  Specifies the configurable fields of a module database and provides a template for the configuration of each field.
SymbolPath  A path to symbols.
TargetFile  Information about specific files in a target image.
TargetImage  Contains information about the target images of the product.
TargetProductCode  A product code for a product that may receive this patch (or '*' for all products).
Text  An alternative to using the Text attribute when the value contains special XML characters like <, >, or &.
TextStyle   
TypeLib  Register a type library (TypeLib).
UI  Enclosing element to compartmentalize UI specifications.
UIRef  Reference to a UI element. This will force the entire referenced Fragment's contents to be included in the installer database.
UIText  Text associated with certain controls
UnpublishComponents  Manages the unadvertisement of components listed in the PublishComponent table.
UnpublishFeatures  Removes selection-state and feature-component mapping information from the registry.
UnregisterClassInfo  Manages the removal of COM class information from the system registry.
UnregisterComPlus  Removes COM+ applications from the registry.
UnregisterExtensionInfo  Manages the removal of extension-related information from the system registry.
UnregisterFonts  Removes registration information about installed fonts from the system.
UnregisterMIMEInfo  Unregisters MIME-related registry information from the system.
UnregisterProgIdInfo  Manages the unregistration of OLE ProgId information with the system.
UnregisterTypeLibraries  Unregisters type libraries from the system.
Upgrade  Upgrade info for a particular UpgradeCode
UpgradeFile  Specifies files to either ignore or to specify optional data about a file.
UpgradeImage  Contains information about the upgraded images of the product.
UpgradeVersion   
Validate  Sets information on the patch transform that determines to which product the transform applies and what errors should be ignored when applying the patch transform.
ValidateProductID  Sets the ProductID property to the full product identifier.
Verb  Verb definition for an Extension.
Wix  This is the top-level container element for every wxs file.
WixVariable  This element exposes advanced WiX functionality.
WriteEnvironmentStrings  Modifies the values of environment variables.
WriteIniValues  Writes the .ini file information that the application needs written to its .ini files.
WriteRegistryValues  Sets up an application's registry information.