<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 1999-2022. Plesk International GmbH. All rights reserved. -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="common.xsd"/>
	<xs:include schemaLocation="descriptor.xsd"/>
	<xs:complexType name="buttonDataType">
		<xs:annotation>
			<xs:documentation>Button data</xs:documentation>
		</xs:annotation>
		<xs:all>
			<xs:element name="code" type="string">
				<xs:annotation>
					<xs:documentation>Button identifier. String ID</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="type">
				<xs:annotation>
					<xs:documentation>Button type</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="string">
						<xs:enumeration value="link_button"/>
						<xs:enumeration value="comm_button"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="name" type="string">
				<xs:annotation>
					<xs:documentation>Localized button text</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="name_id" type="string">
				<xs:annotation>
					<xs:documentation>Key for localized button text. String ID for localization</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="group_name" type="string">
				<xs:annotation>
					<xs:documentation>Localized button's group name</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="group_name_id" type="string">
				<xs:annotation>
					<xs:documentation>Key for localized group name. String ID for localization</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="href" type="urlType">
				<xs:annotation>
					<xs:documentation>URL to which button points</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="js_onclick" type="text" minOccurs="0">
				<xs:annotation>
					<xs:documentation>JavaScript attached to button's onClick event</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="enabled" type="boolean">
				<xs:annotation>
					<xs:documentation>Button enabled flag</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="new_window" type="boolean" minOccurs="0">
				<xs:annotation>
					<xs:documentation>New window flag. Should be listed on version 1.3.1.7 and higher</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="tabindex" type="int" default="0" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Button tabulation index</xs:documentation>
				</xs:annotation>
			</xs:element>
			<!-- added in protocol version 1.3.2.4 -->
			<xs:element name="conhelp_id" type="string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Key for localized context help message (since protocol version 1.3.2.4)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="conhelp" type="text" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Context help message (since protocol version 1.3.2.4)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="icon_url" type="urlType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Location of the icon for given button (since protocol version 1.3.2.4)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<!-- /added in protocol version 1.3.2.4 -->
		</xs:all>
	</xs:complexType>
	<xs:simpleType name="garbageOutput">
		<xs:annotation>
			<xs:documentation>Garbage Output, for debug</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string"/>
	</xs:simpleType>
	<xs:simpleType name="forwardingURL">
		<xs:annotation>
			<xs:documentation>URL, only symbolic name, not an IP</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string">
			<xs:maxLength value="255"/>
			<xs:whiteSpace value="collapse"/>
			<xs:minLength value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="netInterface">
		<xs:annotation>
			<xs:documentation>Server Network Interface name</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string">
			<xs:minLength value="1"/>
			<xs:maxLength value="200"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="expandIPUsageStatus">
		<xs:annotation>
			<xs:documentation>IP address usage status in Expand DB</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string">
			<xs:enumeration value="free"/>
			<xs:enumeration value="reserved"/>
			<xs:enumeration value="assigned"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ipType">
		<xs:annotation>
			<xs:documentation>IP address usage status in Expand DB</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string">
			<xs:enumeration value="shared"/>
			<xs:enumeration value="exclusive"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="objectStatus">
		<xs:annotation>
			<xs:documentation>Plesk client and domain status. Bit mask with bit flags: 0 - object is active 4 - object is under backup/restore 16 - object is disabled by Administrator 64 - object is disabled by Client 256 - object is expired Only 0, 16 and 64 flags are available for setting</xs:documentation>
		</xs:annotation>
		<xs:restriction base="int"/>
	</xs:simpleType>
	<xs:simpleType name="pleskOS">
		<xs:annotation>
			<xs:documentation>Operation System, look enumerations</xs:documentation>
		</xs:annotation>
		<xs:restriction base="string">
			<xs:enumeration value="Windows"/>
			<xs:enumeration value="RedHat"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="PleskLimitType">
		<xs:sequence>
			<xs:element name="name" type="string"/>
			<xs:element name="value" type="long"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PleskPermissionType">
		<xs:sequence>
			<xs:element name="name" type="string"/>
			<xs:element name="value" type="boolean"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SubscriptionsList">
		<xs:sequence>
			<xs:element name="subscription" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="locked" type="string"/>
						<xs:element name="synchronized" type="string"/>
						<xs:element name="plan" type="PlanOutputInfo" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PlanOutputInfo">
		<xs:sequence>
			<xs:element name="plan-guid" type="string"/>
			<xs:element name="plan-external-id" type="string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="priceInput">
		<xs:sequence>
			<xs:element name="currency" type="string"/>
			<xs:element name="sum" type="string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ApplicationInput">
		<xs:sequence>
			<xs:element name="name" type="string"/>
			<xs:element name="value" type="string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="APSIdentifierType">
		<xs:sequence>
			<xs:element name="name" type="string"/>
			<xs:element name="version" type="string" minOccurs="0"/>
			<xs:element name="release" type="string" minOccurs="0"/>
			<xs:element name="vendor" type="string" minOccurs="0"/>
			<xs:element name="packager" type="string" minOccurs="0"/>
			<xs:element name="is_uploaded" type="string" minOccurs="0"/>
			<xs:element name="is_visible" type="string" minOccurs="0"/>
			<xs:element name="description" type="string" minOccurs="0"/>
			<xs:element name="global_settings_not_set" type="string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="phpSettings">
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="setting">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="name" type="string"/>
						<xs:element name="value" type="string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="dbServerInput">
		<xs:sequence>
			<xs:element name="type" type="string"/>
			<xs:choice>
				<xs:element name="id" type="id_type"/>
				<xs:sequence>
					<xs:element name="host" type="string"/>
					<xs:element name="port" type="string"/>
				</xs:sequence>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="dbServerOutput">
		<xs:sequence>
			<xs:element name="type" type="string"/>
			<xs:element name="id" type="id_type"/>
			<xs:element name="host" type="string"/>
			<xs:element name="port" type="string"/>
		</xs:sequence>
	</xs:complexType>
    <xs:simpleType name="statTtl">
        <xs:annotation>
            <xs:documentation>The number-or-normal values can be either a positive integer or zero or an empty string.</xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="xs:nonNegativeInteger">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value=""/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
    <xs:simpleType name="booleanWithDefault">
        <xs:restriction base="xs:string">
            <xs:enumeration value="true"/>
            <xs:enumeration value="false"/>
            <xs:enumeration value="default"/>
        </xs:restriction>
    </xs:simpleType>
</xs:schema>
