XSD for Product Key Web Services
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
version="1.0">
<xs:element name="productKey">
<xs:annotation>
<xs:documentation>Details of single product Key</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="productKeyId" type="xs:string" nillable="false"/>
<xs:element name="totalEntitled" type="xs:string" nillable="false"/>
<xs:element name="available" type="xs:string" nillable="false"/>
<xs:element name="enabled" type="xs:boolean"/>
<xs:element name="type" type="xs:string"/>
<xs:element name="registrationRequired" default="NOT_REQUIRED" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NOT_REQUIRED"/>
<xs:enumeration value="DESIRED"/>
<xs:enumeration value="MANDATORY"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="customerEmail" type="xs:string" minOccurs="0"/>
<xs:element name="customerName" type="xs:string" minOccurs="0"/>
<xs:element name="productInfo" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="keyProduct">
<xs:attribute name="id" type="xs:string"/>
<xs:attribute name="productName" type="xs:string"/>
<xs:attribute name="type" type="xs:string"/>
<xs:attribute name="productIdentifier" type="xs:string"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="AID" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>All activation Ids belonging to this product
key</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="protectionKeyId" type="xs:string"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="activationAttribute" type="activationAttribute"
maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Global licensing attributes </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="protectionKeyId" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="keyType" type="xs:string"/>
<xs:attribute name="isDriverless" type="xs:boolean" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="entitlementId" minOccurs="0" maxOccurs="1" type="xs:integer"/>
<xs:element name="customerId" minOccurs="0" maxOccurs="1" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="activationAttribute">
<xs:sequence>
<xs:element name="attributeName">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="ACKNOWLEDGEMENT_REQUEST"/>
<xs:enumeration value="C2V"/>
<xs:enumeration value="CLEAR_BEFORE_APPLYING_UPDATE"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="attributeValue" type="xs:string"/>
<xs:element name="groupName" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="LICENSE_TERMS"/>
<xs:enumeration value="CONCURRENCY"/>
<xs:enumeration value="ACCESSIBILITY"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="isvPermission" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NONE"/>
<xs:enumeration value="READ"/>
<xs:enumeration value="WRITE"/>
<xs:enumeration value="ORDER_WRITE"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="subGroupName" minOccurs="0"/>
<xs:element name="endUserPermission" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NONE"/>
<xs:enumeration value="READ"/>
<xs:enumeration value="WRITE"/>
<xs:enumeration value="ORDER_WRITE"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="associatedAttribute">
<xs:sequence>
<xs:element name="attributeName" type="xs:string"/>
<xs:element name="attributeValue" type="xs:string"/>
<xs:element name="readOnly"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="keyProduct"/>
</xs:schema>