﻿<?xml version="1.0" encoding="utf-8"?>
<!--
  <copyright file="netfx.xsd" company="Outercurve Foundation">
    Copyright (c) 2004, Outercurve Foundation.
    This software is released under Microsoft Reciprocal License (MS-RL).
    The license and further copyright text can be found in the file
    LICENSE.TXT at the root directory of the distribution.
  </copyright>
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
          xmlns:xse="http://schemas.microsoft.com/wix/2005/XmlSchemaExtension"
         xmlns:html="http://www.w3.org/1999/xhtml"
    targetNamespace="http://schemas.microsoft.com/wix/NetFxExtension"
              xmlns="http://schemas.microsoft.com/wix/NetFxExtension">
    <xs:annotation>
        <xs:documentation>
            The source code schema for the Windows Installer XML Toolset .NET Framework Extension.
        </xs:documentation>
    </xs:annotation>

    <xs:element name="NativeImage">
        <xs:annotation>
            <xs:documentation>
                Improves the performance of managed applications by creating native images.
                Requires the .NET Framework 2.0 or newer to be installed on the target machine since
                it runs <html:a href="http://msdn2.microsoft.com/en-us/library/6t9t5wcf.aspx">NGen</html:a>.
            </xs:documentation>
            <xs:appinfo>
                <xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="File" />
                <xse:remarks>
                    <html:p>
                        Native images are files containing compiled processor-specific machine code, which
                        are installed into the native image cache on the local computer. The runtime
                        can use native images from the cache instead using the just-in-time (JIT)
                        compiler to compile the original assembly.
                    </html:p>
                    <html:p>
                        The native image custom actions are configured to ignore failures so that failing
                        to generate or remove a native image will not cause setup to fail and roll back.
                    </html:p>
                    <html:p>
                        <html:b>Note for patches:</html:b> if you built your target, or baseline, MSI with
                        previous versions 3.0 or 3.5 of this extension and want to upgrade to formattable
                        values for @AssemblyApplication or @AppBaseDirectory you must also include a
                        BinaryRef to "NetFxCA" to pull in necessary changes. If you do use formattable
                        values and do not include the binary changes ngen.exe will not optimize your
                        native images for the specified application.
                    </html:p>
                    <html:p>
                        This should be a rare occurrence, however. Because you cannot remove components
                        in a patch - and pyro does validate you do not - it is not practical to switch
                        from using identifiers to formattable values in a patch. One practical possibility
                        is if you wanted to use a different application to optimize your native images
                        and that application is not already installed with the MSI to be updated.
                    </html:p>
                </xse:remarks>
            </xs:appinfo>
        </xs:annotation>
        <xs:complexType>
            <xs:attribute name="Id" type="xs:string" use="required">
                <xs:annotation>
                    <xs:documentation>
                        The identifier for this NativeImage.
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="AppBaseDirectory" type="xs:string">
                <xs:annotation>
                    <xs:documentation>
                        <html:p>
                            The directory to use for locating dependent assemblies.
                            For DLL assemblies and assemblies installed to the Global Assembly Cache (GAC),
                            this attribute should be set to the directory of the application which loads this
                            assembly.  For EXE assemblies, this attribute does not need to be set because NGen
                            will use the directory of the assembly file by default.
                        </html:p>
                        <html:p>
                            The value can be in the form of a directory identifier, or a formatted string
                            that resolves to either a directory identifier or a full path to a directory.
                        </html:p>
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="AssemblyApplication" type="xs:string">
                <xs:annotation>
                    <xs:documentation>
                        <html:p>
                            The application which will load this assembly.
                            For DLL assemblies which are loaded via reflection, this attribute should
                            be set to indicate the application which will load this assembly.
                            The configuration of the application (usually specified via an exe.config file) will be used
                            to determine how to resolve dependencies for this assembly.
                        </html:p>
                        <html:p>
                            The value can be in the form of a file identifier, or a formatted string
                            that resolves to either a file identifier or a full path to a file.
                        </html:p>
                        <html:p>
                            When a shared component is loaded at run time, using the Load method, the
                            application's configuration file determines the dependencies that are loaded
                            for the shared component — for example, the version of a dependency that is loaded.
                            This attribute gives guidance on which dependencies would be loaded at run time in order
                            to figure out which dependency assemblies will also need to have native images generated
                            (assuming the Dependency attribute is not set to "no").
                        </html:p>
                        <html:p>
                            This attribute cannot be set if the AssemblyApplication attribute is set on the parent
                            File element (please note that these attributes both refer to the same application
                            assembly but do very different things: specifiying File/@AssemblyApplication will force
                            an assembly to install to a private location next to the indicated application, whereas
                            this AssemblyApplication attribute will be used to help resolve dependent assemblies
                            while generating native images for this assembly).
                        </html:p>
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="Debug" type="YesNoType">
                <xs:annotation>
                    <xs:documentation>
                        Set to "yes" to generate native images that can be used under a debugger.
                        The default value is "no".
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="Dependencies" type="YesNoType">
                <xs:annotation>
                    <xs:documentation>
                        Set to "no" to generate the minimum number of native images.
                        The default value is "yes".
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
            <xs:attribute name="Platform">
                <xs:annotation>
                    <xs:documentation>
                        Sets the platform(s) for which native images will be generated.
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:NMTOKEN">
                        <xs:enumeration value="32bit">
                            <xs:annotation>
                                <xs:documentation>
                                    Attempt to generate native images only for the 32-bit version of the .NET Framework
                                    on the target machine.  If the 32-bit version of the .NET Framework 2.0 or newer is not
                                    present on the target machine, native image custom actions will not be scheduled.
                                    This is the default value.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="64bit">
                            <xs:annotation>
                                <xs:documentation>
                                    Attempt to generate native images only for the 64-bit version of the .NET Framework
                                    on the target machine.  If a 64-bit version of the .NET Framework 2.0 or newer is not
                                    present on the target machine, native image custom actions will not be scheduled.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="all">
                            <xs:annotation>
                                <xs:documentation>
                                    Attempt to generate native images for the 32-bit and 64-bit versions of the .NET Framework
                                    on the target machine.  If a version of the .NET Framework 2.0 or newer is not present on the
                                    target machine for a processor architecture, native image custom actions will not be
                                    scheduled for that processor architecture.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Priority">
                <xs:annotation>
                    <xs:documentation>
                        Sets the priority of generating the native images for this assembly.
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:restriction base="xs:NMTOKEN">
                        <xs:enumeration value="0">
                            <xs:annotation>
                                <xs:documentation>
                                    This is the highest priority, it means that image generation occurs syncronously
                                    during the setup process.  This option will slow down setup performance.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="1">
                            <xs:annotation>
                                <xs:documentation>
                                    This will queue image generation to the NGen service to occur immediately.
                                    This option will slow down setup performance.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="2">
                            <xs:annotation>
                                <xs:documentation>
                                    This will queue image generation to the NGen service to occur after all priority 1
                                    assemblies have completed.
                                    This option will slow down setup performance.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                        <xs:enumeration value="3">
                            <xs:annotation>
                                <xs:documentation>
                                    This is the lowest priority, it will queue image generation to occur when the
                                    machine is idle.
                                    This option should not slow down setup performance.
                                    This is the default value.
                                </xs:documentation>
                            </xs:annotation>
                        </xs:enumeration>
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
            <xs:attribute name="Profile" type="YesNoType">
                <xs:annotation>
                    <xs:documentation>
                        Set to "yes" to generate native images that can be used under a profiler.
                        The default value is "no".
                    </xs:documentation>
                </xs:annotation>
            </xs:attribute>
        </xs:complexType>
    </xs:element>

    <xs:simpleType name="YesNoType">
        <xs:annotation>
            <xs:documentation>Values of this type will either be "yes" or "no".</xs:documentation>
        </xs:annotation>
        <xs:restriction base='xs:NMTOKEN'>
            <xs:enumeration value="no"/>
            <xs:enumeration value="yes"/>
        </xs:restriction>
    </xs:simpleType>

</xs:schema>
