| <?xml version="1.0" encoding="utf-8"?> |
| <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" |
| xmlns:wix="http://schemas.microsoft.com/wix/2006/wi" |
| targetNamespace="http://schemas.microsoft.com/wix/PSExtension" |
| xmlns="http://schemas.microsoft.com/wix/PSExtension"> |
| <xs:annotation> |
| <xs:documentation> |
| Copyright (c) Microsoft Corporation. All rights reserved. |
| |
| The use and distribution terms for this software are covered by the |
| Common Public License 1.0 (http://opensource.org/licenses/cpl1.0.php) |
| which can be found in the file CPL.TXT at the root of this distribution. |
| By using this software in any fashion, you are agreeing to be bound by |
| the terms of this license. |
| |
| You must not remove this notice, or any other, from this software. |
| |
| The source code schema for the Windows Installer XML Toolset PowerShell Extension. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:import namespace="http://schemas.microsoft.com/wix/2006/wi" /> |
| <xs:element name="FormatsFile"> |
| <xs:annotation> |
| <xs:documentation> |
| Identifies the parent File as a formats XML file for the referenced PowerShell snap-in. |
| </xs:documentation> |
| <xs:appinfo> |
| <xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="File" /> |
| <xse:remarks> |
| A formats XML file that defines output formats for objects on the pipeline. |
| </xse:remarks> |
| </xs:appinfo> |
| </xs:annotation> |
| <xs:complexType> |
| <xs:attribute name="FileId" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| Reference to the formats File ID. This is required when nested under the SnapIn element. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="SnapIn" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| Reference to the PowerShell snap-in ID for which this formats file is associated. This is required when nested under the File element. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="TypesFile"> |
| <xs:annotation> |
| <xs:documentation> |
| Identifies the parent File as a types XML file for the referenced PowerShell snap-in. |
| </xs:documentation> |
| <xs:appinfo> |
| <xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="File" /> |
| <xse:remarks> |
| A types XML file used by the extensible type system. |
| </xse:remarks> |
| </xs:appinfo> |
| </xs:annotation> |
| <xs:complexType> |
| <xs:attribute name="FileId" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| Reference to the types File ID. This is required when nested under the SnapIn element. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="SnapIn" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| Reference to the PowerShell snap-in ID for which this types file is associated. This is required when nested under the File element. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="SnapIn"> |
| <xs:annotation> |
| <xs:documentation> |
| Identifies the parent File as a PowerShell snap-in to be registered on the system. |
| </xs:documentation> |
| <xs:appinfo> |
| <xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="File" /> |
| <xse:remarks> |
| <html:a href="http://www.microsoft.com/powershell">PowerShell</html:a> snap-ins |
| allow developers to extend the functionality of of the PowerShell engine. |
| Add this element to identify the parent File as a PowerShell snap-in that will |
| get registered on the system. |
| </xse:remarks> |
| </xs:appinfo> |
| </xs:annotation> |
| <xs:complexType> |
| <xs:choice minOccurs="0" maxOccurs="unbounded"> |
| <xs:element ref="FormatsFile" /> |
| <xs:element ref="TypesFile" /> |
| </xs:choice> |
| <xs:attribute name="Id" type="xs:string" use="required"> |
| <xs:annotation> |
| <xs:documentation> |
| The identifier for this PowerShell snap-in. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="AssemblyName" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| The fully-qualified name of the assembly. |
| </xs:documentation> |
| <xs:appinfo> |
| <xse:deprecated /> |
| </xs:appinfo> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="CustomSnapInType" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| The full type name of a class that is used to register a list of cmdlets and providers. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="Description" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| A brief description of the snap-in. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="DescriptionIndirect" type="EmbeddedResource"> |
| <xs:annotation> |
| <xs:documentation> |
| An embedded resource that contains a brief description of the snap-in. |
| This resource must be embedded in the current snap-in assembly. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="RequiredPowerShellVersion" type="VersionType"> |
| <xs:annotation> |
| <xs:documentation> |
| The required version of PowerShell that must be installed and is associated with the |
| snap-in registration. The default value is "1.0". |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="Vendor" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| The name of the snap-in vendor. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="VendorIndirect" type="EmbeddedResource"> |
| <xs:annotation> |
| <xs:documentation> |
| An embedded resource that contains the name of the snap-in vendor. |
| This resource must be embedded in the current snap-in assembly. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:attribute name="Version" type="VersionType"> |
| <xs:annotation> |
| <xs:documentation> |
| The version of the snapin. If not specified, this is taken from the assembly name. |
| </xs:documentation> |
| </xs:annotation> |
| </xs:attribute> |
| </xs:complexType> |
| </xs:element> |
| <xs:attribute name="RequiredVersion" type="xs:string"> |
| <xs:annotation> |
| <xs:documentation> |
| The version of this extension required to compile the defining source. |
| </xs:documentation> |
| <xs:appinfo> |
| <xse:parent namespace="http://schemas.microsoft.com/wix/2006/wi" ref="Wix" /> |
| </xs:appinfo> |
| </xs:annotation> |
| </xs:attribute> |
| <xs:simpleType name="EmbeddedResource"> |
| <xs:annotation> |
| <xs:documentation> |
| <html:p> |
| Values should be in the format <html:i>ResourceName,StringName</html:i>, where <html:i>ResourceName</html:i> |
| is the name of the embedded resource in your assembly sans the ".resources" extension, and <html:i>StringName</html:i> |
| is the name of the string resource in the embedded resource. |
| </html:p> |
| <html:p> |
| Example: UtilityMshSnapInResources,Description |
| </html:p> |
| </xs:documentation> |
| </xs:annotation> |
| <xs:restriction base="xs:string" /> |
| </xs:simpleType> |
| <xs:simpleType name="VersionType"> |
| <xs:annotation> |
| <xs:documentation> |
| Values of this type will look like: "x", "x.x", "x.x.x", or "x.x.x.x" where x is an integer from 0 to 65534. |
| </xs:documentation> |
| </xs:annotation> |
| <xs:restriction base="xs:string"> |
| <xs:pattern value="\d{1,5}(\.\d{1,5}){0,3}"/> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:schema> |