<xsd:schema  xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">

<xsd:include schemaLocation="common_trans.xsd"/>
<xsd:include schemaLocation="obj_mcu_lan_configuration.xsd"/>
<xsd:include schemaLocation="obj_mcu_time.xsd"/>
<xsd:include schemaLocation="obj_exchange_cfg.xsd"/>
<xsd:include schemaLocation="obj_resolutions_set.xsd"/>
 

	<xsd:element name="LOGIN"  type="LoginRequestContent"/>
	<xsd:element name="LOGOUT" type="LogoutContent"/>
	<xsd:element name="GET_STATE"/>
	<xsd:element name="RMX_GET_STATE_EX" type="RmxGetStateExContent"/>
	<xsd:element name="GET_MEMORY_STATE"/>
	<xsd:element name="GET_LAN_CONFIGURATION"/>
	<xsd:element name="GET_TIME"/>
	<xsd:element name="GET_CFS"/>
	<xsd:element name="RESET"/>
	<xsd:element name="GET_RECORDING_JUNCTION_LIST"/>
	<xsd:element name="FILE_UPDATED_STRING" type="xsd:string"/>
	<xsd:element name="PATH" type="xsd:string"/>
	<xsd:element name="NEW_NAME" type="xsd:string"/>
	<xsd:element name="GET_DIRECTORY" type="DirectoryPath"/>
	<xsd:element name="GET_DIRECTORY_RECURSIVE" type="DirectoryPath"/>
	<xsd:element name="GET_VIRTUAL_DIRECTORY" type="DirectoryPath"/>
	<xsd:element name="GET_VIRTUAL_DIRECTORY_RECURSIVE" type="DirectoryPath"/>
	<xsd:element name="REMOVE_DIRECTORY" type="DirectoryPath"/>
	<xsd:element name="REMOVE_DIRECTORY_CONTENT" type="DirectoryPath"/>
	<xsd:element name="BEGIN_RECEIVING_VERSION"/>
	<xsd:element name="FINISHED_TRANSFER_VERSION"/>
	<xsd:element name="UPDATE_KEY_CODE" type="KeyCodeContent"/>
	<xsd:element name="FLUSH"/>
	<xsd:element name="STOP_ALL_MEDIA_RECORDING"/>
	<xsd:element name="RESTORE_TYPE" type="RestoreType"/>
	<xsd:element name="COLLECT_INFO" type ="CollectInfoContent"/>
	<xsd:element name="GET_INSTALLATION_STATUS"/>
	<xsd:element name="TURN_SSH" type="TurnSSHContent"/>
	<xsd:element name="GET_PORT_CONFIGURATION"/>
	<xsd:element name="SET_PORT_CONFIGURATION" type="PortConfigurationIndex"/>
	<xsd:element name="GET_ENHANCED_PORT_CONFIGURATION"/>
	<xsd:element name="GET_CHECK_ENHANCED_PORT_CONFIGURATION" type="EnhancedPortNumConfiguration"/>
	<xsd:element name="SET_ENHANCED_PORT_CONFIGURATION" type="EnhancedPortNumConfiguration"/>
	<xsd:element name="AUDIO_NUM_PORTS_CONFIG" type="xsd:integer"/>
	<xsd:element name="CIF_NUM_PORTS_CONFIG" type="xsd:integer"/>
	<xsd:element name="SD_NUM_PORTS_CONFIG" type="xsd:integer"/>
	<xsd:element name="HD720_NUM_PORTS_CONFIG" type="xsd:integer"/>
	<xsd:element name="HD1080_NUM_PORTS_CONFIG" type="xsd:integer"/>
	<xsd:element name="INSTALL_PREVIOUS_VERSION" type="InstallPreviousVersionContent"/>
	<xsd:element name="VERSION_TYPE" type="VersionType"/>
	<xsd:element name="GET_ALLOCATION_MODE"/>
	<xsd:element name="SET_ALLOCATION_MODE" type="SelectedAllocationModeContent"/>
	<xsd:element name="SELECTED_ALLOCATION_MODE" type="AllocationModeType"/>
	<xsd:element name="BACKUP_CONFIG_START"/>
	<xsd:element name="BACKUP_CONFIG_FINISH"/>
	<xsd:element name="RESTORE_CONFIG_START"/>
	<xsd:element name="RESTORE_CONFIG_FINISH" type="RestoreCfgFinish"/>
	<xsd:element name="REASON" type="LogoutReasonType" default="normal"/>
	<xsd:element name="SET_PING" type="SetPingContent"/>
	<xsd:element name="GET_PING" type="GetPingContent"/>
	<xsd:element name="GET_MCU_EXCHANGE_CONFIG_PARAMS"/>
	<xsd:element name="SET_MCU_EXCHANGE_CONFIG_PARAMS" type="SetMcuExchangeConfigParams"/>
	<xsd:element name="GET_LAST_SET_MCU_EXCHANGE_CONFIG_INDICATION"/>
	<xsd:element name="GET_RESOLUTIONS_SET"/>

	<xsd:complexType name="RestoreCfgFinish">
		<xsd:sequence>
			<xsd:element name="RESTORE_CONFIG_FILE" type="xsd:string"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:simpleType name="VersionType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="fallback"/>
			<xsd:enumeration value="factory"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:complexType name="InstallPreviousVersionContent">
		<xsd:sequence>
			<xsd:element ref="VERSION_TYPE"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:simpleType name="RestoreType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="standard"/>
			<xsd:enumeration value="extensive"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:complexType name="KeyCodeContent">
		<xsd:sequence>
			<xsd:element name="KEY_CODE" type="xsd:string"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CollectInfoContent">
		<xsd:sequence>
			<xsd:element  ref="START_TIME"/>
			<xsd:element  ref="END_TIME"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="DirectoryPath">
		<xsd:sequence>
			<xsd:element ref="PATH"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="TurnSSHContent">
		<xsd:sequence>
			<xsd:element ref="ON"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:element name="TRANS_MCU">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="TRANS_COMMON_PARAMS"/>
				<xsd:choice>
					<xsd:group ref="ACTIONS"/>
					<xsd:element ref="ACTION"/>
				</xsd:choice>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="SET_LAN_CONFIGURATION">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="MCU_LAN_CONFIGURATION"/>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="SET_TIME">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="MCU_TIME"/>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="FILE_UPDATED">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="FILE_UPDATED_STRING"/>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="CREATE_DIRECTORY">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="PATH"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="RENAME">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="PATH"/>
				<xsd:element ref="NEW_NAME"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="SET_RESTORE_TYPE">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="RESTORE_TYPE"/>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:complexType name="PortConfigurationIndex">
		<xsd:sequence>
			<xsd:element ref="SELECTED_ID"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="EnhancedPortNumConfiguration">
		<xsd:sequence>
			<xsd:element ref="AUDIO_NUM_PORTS_CONFIG"/>
			<xsd:element ref="CIF_NUM_PORTS_CONFIG"/>
			<xsd:element ref="SD_NUM_PORTS_CONFIG"/>
			<xsd:element ref="HD720_NUM_PORTS_CONFIG"/>
			<xsd:element ref="HD1080_NUM_PORTS_CONFIG"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="SelectedAllocationModeContent">
		<xsd:sequence>
			<xsd:element ref="SELECTED_ALLOCATION_MODE"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:simpleType name="LogoutReasonType">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="normal"/>
			<xsd:enumeration value="session_expired"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:complexType name="LogoutContent">
		<xsd:sequence>
			<xsd:element ref="REASON"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="SetPingContent">
		<xsd:sequence>
			<xsd:element ref="PING"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="GetPingContent">
		<xsd:sequence>
			<xsd:element ref="PING_ID"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="SetMcuExchangeConfigParams">
		<xsd:sequence>
			<xsd:element ref="MCU_EXCHANGE_CONFIG_PARAMS"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>
	
	<xsd:complexType name="RmxGetStateExContent">
		<xsd:sequence>
			<xsd:element ref="CLIENT_IP"  minOccurs="0"/>
			<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:element name="SET_RESOLUTIONS_SET">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="SET_RESOLUTIONS_PARAMS"/>
				<xsd:any processContents="skip" minOccurs="0" maxOccurs="unbounded" namespace="##other"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	<xsd:group name="ACTIONS">
		<xsd:choice>
			<xsd:element ref="LOGIN"/>
			<xsd:element ref="LOGOUT"/>
			<xsd:element ref="GET_STATE"/>
			<xsd:element ref="GET_MEMORY_STATE"/>						<!--not supported-->
			<xsd:element ref="RESET"/>									<!--not supported-->
			<xsd:element ref="GET_LAN_CONFIGURATION"/>					<!--not supported-->
			<xsd:element ref="SET_LAN_CONFIGURATION"/>					<!--not supported-->
			<xsd:element ref="GET_TIME"/>
			<xsd:element ref="SET_TIME"/>
			<xsd:element ref="GET_DIRECTORY"/>
			<xsd:element ref="GET_DIRECTORY_RECURSIVE"/>				<!--not supported-->
			<xsd:element ref="GET_VIRTUAL_DIRECTORY"/>
			<xsd:element ref="GET_VIRTUAL_DIRECTORY_RECURSIVE"/>
			<xsd:element ref="FILE_UPDATED"/>							<!--not supported-->
			<xsd:element ref="CREATE_DIRECTORY"/>
			<xsd:element ref="RENAME"/>
			<xsd:element ref="REMOVE_DIRECTORY"/>
			<xsd:element ref="BEGIN_RECEIVING_VERSION"/>
			<xsd:element ref="FINISHED_TRANSFER_VERSION"/>
			<xsd:element ref="UPDATE_KEY_CODE"/>
			<xsd:element ref="FLUSH"/>
			<xsd:element ref="GET_CFS"/>
			<xsd:element ref="STOP_ALL_MEDIA_RECORDING"/>
			<xsd:element ref="GET_RECORDING_JUNCTION_LIST"/>
			<xsd:element ref="SET_RESTORE_TYPE"/>
			<xsd:element ref="COLLECT_INFO"/>
			<xsd:element ref="GET_INSTALLATION_STATUS"/>
			<xsd:element ref="TURN_SSH"/>
			<xsd:element ref="REMOVE_DIRECTORY_CONTENT"/>
			<xsd:element ref="GET_PORT_CONFIGURATION"/>
			<xsd:element ref="SET_PORT_CONFIGURATION"/>
			<xsd:element ref="GET_ENHANCED_PORT_CONFIGURATION"/>
			<xsd:element ref="GET_CHECK_ENHANCED_PORT_CONFIGURATION"/>
			<xsd:element ref="SET_ENHANCED_PORT_CONFIGURATION"/>
			<xsd:element ref="INSTALL_PREVIOUS_VERSION"/>
			<xsd:element ref="GET_ALLOCATION_MODE"/>
			<xsd:element ref="SET_ALLOCATION_MODE"/>
			<xsd:element ref="BACKUP_CONFIG_START"/>
			<xsd:element ref="BACKUP_CONFIG_FINISH"/>
			<xsd:element ref="RESTORE_CONFIG_START"/>
			<xsd:element ref="RESTORE_CONFIG_FINISH"/>
			<xsd:element ref="SET_PING"/>
			<xsd:element ref="GET_PING"/>
			<xsd:element ref="RMX_GET_STATE_EX"/>
			<xsd:element ref="GET_MCU_EXCHANGE_CONFIG_PARAMS"/>
			<xsd:element ref="SET_MCU_EXCHANGE_CONFIG_PARAMS"/>
			<xsd:element ref="GET_LAST_SET_MCU_EXCHANGE_CONFIG_INDICATION"/>
			<xsd:element ref="GET_RESOLUTIONS_SET"/>
			<xsd:element ref="SET_RESOLUTIONS_SET"/>
		</xsd:choice>
	</xsd:group>

	<xsd:element name="ACTION">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:group ref="ACTIONS"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>

</xsd:schema>
