PatchApplicability Schema
Applies To: Windows Server Update Services
Types
The PatchApplicability Schema defines the following types in the https://www.microsoft.com/msi/patch\_applicability.xsd target namespace.
MsiPatch
<xs:element name="MsiPatch">
<xs:complexType>
<xs:sequence>
<xs:element name="TargetProduct" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="TargetProductCode" type="ValidateGUID" />
<xs:element name="UpdatedProductCode" type="GUID" minOccurs="0" maxOccurs="1" />
<xs:element name="TargetVersion" type="ValidateVersion" />
<xs:element name="UpdatedVersion" type="Version" minOccurs="0" maxOccurs="1" />
<xs:element name="TargetLanguage" type="ValidateLanguage" />
<xs:element name="UpdatedLanguages" type="intList" />
<xs:element name="UpgradeCode" type="ValidateGUID" />
</xs:sequence>
<xs:attribute name="MinMsiVersion" type="xs:int" />
</xs:complexType>
</xs:element>
<xs:element name="TargetProductCode" type="GUID" minOccurs="1" maxOccurs="unbounded" />
<xs:element name="ObsoletedPatch" minOccurs="0" maxOccurs="unbounded" type="GUID" />
<xs:element name="SequenceData" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="PatchFamily" type="Identifier" />
<xs:element name="ProductCode" type="GUID" minOccurs="0" maxOccurs="1" />
<xs:element name="Sequence" type="Version" />
<xs:element name="Attributes" type="xs:int" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="SchemaVersion" type="Version" />
<xs:attribute name="PatchGUID" type="GUID" />
<xs:attribute name="MinMsiVersion" type="xs:int" />
<xs:attribute name="TargetsRTM" type="xs:boolean" use="optional" />
</xs:complexType>
</xs:element>
GUID
<xs:simpleType name="GUID">
<xs:restriction base="xs:string">
<xs:pattern value="\{[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}\}" />
</xs:restriction>
</xs:simpleType>
Version
<xs:simpleType name="Version">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{1,5}(\.[0-9]{1,5}){0,3}" />
</xs:restriction>
</xs:simpleType>
ValidateGUID
<xs:complexType name="ValidateGUID">
<xs:simpleContent>
<xs:extension base="GUID">
<xs:attribute name="Validate" type="xs:boolean" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
ValidateVersion
<xs:complexType name="ValidateVersion">
<xs:simpleContent>
<xs:extension base="Version">
<xs:attribute name="ComparisonType">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="LessThan" />
<xs:enumeration value="LessThanOrEqual" />
<xs:enumeration value="Equal" />
<xs:enumeration value="GreaterThanOrEqual" />
<xs:enumeration value="GreaterThan" />
<xs:enumeration value="None" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="ComparisonFilter">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Major" />
<xs:enumeration value="MajorMinor" />
<xs:enumeration value="MajorMinorUpdate" />
<xs:enumeration value="None" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="Validate" type="xs:boolean" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
ValidateLanguage
<xs:complexType name="ValidateLanguage">
<xs:simpleContent>
<xs:extension base="xs:int">
<xs:attribute name="Validate" type="xs:boolean" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
intList
<xs:simpleType name="intList">
<xs:list itemType="xs:int" />
</xs:simpleType>
Identifier
<xs:simpleType name="Identifier">
<xs:restriction base="xs:string">
<xs:pattern value="[_a-zA-Z0-9][_a-zA-Z0-9\.]*" />
</xs:restriction>
</xs:simpleType>