<?xml version="1.0" encoding="UTF-8"?>
<uiSocket id="socket" about="http://resources.myurc.org/UrcSimEnv/vcr/socket" xmlns="http://www.incits.org/incits390-2005" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<variable id="power" type="xsd:boolean">
		<dependency read="true()" write="true()"/>
	</variable>
	<variable id="state" type="xsd:string">
		<selection closed="true">
			<selectionSetStatic id="state" refType="vcrState"/>
		</selection>
		<dependency read="true()" write="false()"/>
	</variable>
	<command id="play" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('play') = 'ready' and value('state') != 'playing' and value('state') != 'recording' and value('state') != 'pausedFromRecord'"/>
	</command>
	<command id="stop" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('stop') = 'ready' and value('state') != 'stopped'"/>
	</command>
	<command id="record" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('record') = 'ready' and value('state') != 'recording' and value('state') != 'playing' and value('state') != 'pausedFromPlay' and value('state') != 'fastForwarding' and value('state') != 'rewinding'"/>
	</command>
	<command id="pause" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('pause') = 'ready' and value('state') != 'stopped' and value('state') != 'fastForwarding' and value('state') != 'rewinding'"/>
	</command>
	<command id="forward" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('forward') = 'ready' and value('state') != 'fastforwarding' and value('state') != 'recording' and value('state') != 'pausedFromRecord'"/>
	</command>
	<command id="reverse" type="basicCommand">
		<dependency read="true()" execute="value('power') and value('reverse') = 'ready' and value('state') != 'rewinding' and value('state') != 'recording' and value('state') != 'pausedFromRecord'"/>
	</command>
	<xsd:schema>
		<xsd:simpleType name="vcrState" id="vcrState">
			<xsd:restriction base="xsd:string">
				<xsd:enumeration value="playing"/>
				<xsd:enumeration value="stopped"/>
				<xsd:enumeration value="pausedFromPlay"/>
				<xsd:enumeration value="pausedFromRecord"/>
				<xsd:enumeration value="recording"/>
				<xsd:enumeration value="fastForwarding"/>
				<xsd:enumeration value="rewinding"/>
			</xsd:restriction>
		</xsd:simpleType>
	</xsd:schema>
</uiSocket>
