As mentioned previously, Windows Installer installations are based on the .MSI file that is included with the product setup. This file is nothing more than a set of installation instructions that are organized in tables within a relational database. Each table is defined by the Windows Installer Software Development Kit (SDK). This SDK includes Orca, an MSI database editor that has limited functionality. In an organization that invests in an Enterprise Software Packaging strategy, you will require much more comprehensive tools to view, edit, and create MSI installation databases. The tables found in the MSI database contain a series of information types within rows and columns. For example, one commonly used table is the Launch Conditions table. This table sets out the con- ditions under which an installation may or may not be executed. A good example of this is when you create a package for a product that is designed to run on workstations and not on servers. In this case, you would put in a launch condition that verifies the operating system onto which the package is being installed, and if the OS query returned Windows Server 2008, 2003, or 2000, you would display a message stating that this is an unsupported OS and abort the installation process. The tables that make up the body of an MSI database are the sequence tables. Sequence tables tell Windows Installer what to do during an installation and in which order it should be done. A com- mon sequence of events is the verification of the Launch Conditions, and then if they are met, the copying of installation files, the modification of the registry, and the removal of temporary files, such as those used for rollback.