<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.pwg.org/schemas/2011/4/sm" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:pwg="http://www.pwg.org/schemas/2011/4/sm" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:xmime="http://www.w3.org/2005/05/xmlmime" targetNamespace="http://www.pwg.org/schemas/2011/4/sm" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.127">
	<!--04/21/11 PJZ Fixed SystemControlService name-->
	<!--12/20/10 PJZ Added RestartSystemService-->
	<!--12/19/10 PJZ Removed System from Service operations-->
	<!--09/10/10 PJZ Removed SystemCapabilities & moved contained Power elements-->
	<!--07/26/10 PJZ Added listing of services-->
	<!--07/23/10 PJZ Changed name from MFD to System, Changed filename-->
	<!--06/04/10 PJZ Reworked Set MFDElements input parameters-->
	<!--06/04/10 PJZ Updates for upcoming Face to Face-->
	<!--05/13/10 PJZ Removed extension point from operation signatures-->
	<!--04/22/10 PJZ added "Message parameter and made all operations extensible-->
	<!--01/02/10 PJZ Gets/Sets now contain NaturalLanguage(declarative) and ElementsNaturalLanguageRequested(request) as appropriate-->
	<!--PJZ 07/09/09    Initial version-->
	<xs:annotation>
		<xs:documentation xml:lang="en">
   PWG Semantic Model v2   

Copyright 2002-2011, IEEE Industry Standards and Technology Organization/PWG - System Working Group. 
All rights reserved  

   Editors:  Peter Zehler, Ira McDonald 
</xs:documentation>
	</xs:annotation>
	<xs:include schemaLocation="Subunits.xsd"/>
	<xs:include schemaLocation="System.xsd"/>
	<xs:include schemaLocation="PwgCommon.xsd"/>
	<xs:include schemaLocation="PwgWellKnownValues.xsd"/>
	<xs:include schemaLocation="PwgSemanticModel.xsd"/>
	<xs:include schemaLocation="PwgCommonOpMsg.xsd"/>
	<xs:complexType name="SystemElements">
		<xs:sequence>
			<xs:element ref="Services" minOccurs="0"/>
			<xs:element ref="SystemConfiguration" minOccurs="0"/>
			<xs:element ref="SystemDescription" minOccurs="0"/>
			<xs:element ref="SystemStatus" minOccurs="0"/>
			<xs:element ref="Managers" minOccurs="0"/>
			<xs:element ref="Agents" minOccurs="0"/>
			<xs:element ref="Devices" minOccurs="0"/>
			<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##other" processContents="lax"/>
		<!-- System - object -->
	</xs:complexType>
	<xs:element name="DeleteServiceRequest" type="DeleteServiceRequestType"/>
	<xs:element name="DeleteServiceResponse" type="DeleteServiceResponseType"/>
	<xs:element name="DisableAllServicesRequest" type="DisableServiceRequestType"/>
	<xs:element name="DisableAllServicesResponse" type="DisableServiceResponseType"/>
	<xs:element name="EnableAllServicesRequest">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="EnableServiceRequestType"/>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="EnableAllServicesResponse" type="EnableServiceResponseType"/>
	<xs:complexType name="GetSystemElementsRequestType">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguageRequested" minOccurs="0"/>
			<xs:element ref="RequestingUserName"/>
			<xs:element ref="RequestedElements"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="GetSystemElementsRequest" type="GetSystemElementsRequestType"/>
	<xs:complexType name="GetSystemElementsResponseType">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguage" minOccurs="0"/>
			<xs:element name="System" type="SystemElements" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="GetSystemElementsResponse" type="GetSystemElementsResponseType"/>
	<xs:complexType name="ListServicesRequestType">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguageRequested" minOccurs="0"/>
			<xs:element ref="RequestingUserName"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="ListServicesRequest" type="ListServicesRequestType"/>
	<xs:complexType name="ListServicesResponseType">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguage" minOccurs="0"/>
			<xs:element ref="ServiceSummaries"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="ListServicesResponse" type="ListServicesResponseType"/>
	<xs:element name="PauseAllServicesRequest" type="PauseServiceRequestType"/>
	<xs:element name="PauseAllServicesResponse" type="PauseServiceResponseType"/>
	<xs:element name="PauseAllServicesAfterCurrentJobRequest" type="PauseServiceAfterCurrentJobRequestType"/>
	<xs:element name="PauseAllServicesAfterCurrentJobResponse" type="PauseServiceAfterCurrentJobResponseType"/>
	<xs:element name="PowerRequest">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="PowerComponentType"/>
				<xs:element ref="RequestPowerState"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="PowerResponse">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="RequestStatus" type="PowerRequestStatusWKV"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="RestartAllServicesRequest" type="RestartAllServiceRequestType"/>
	<xs:element name="RestartAllServicesResponse" type="RestartAllServiceResponseType"/>
	<xs:element name="RestartSystemServiceRequest" type="RestartSystemServiceRequestType"/>
	<xs:element name="RestartSystemServiceResponse" type="RestartSystemServiceResponseType"/>
	<xs:element name="RestartServiceRequest" type="RestartServiceRequestType"/>
	<xs:element name="RestartServiceResponse" type="RestartServiceResponseType"/>
	<xs:element name="ResumeAllServicesRequest" type="ResumeServiceRequestType"/>
	<xs:element name="ResumeAllServicesResponse" type="ResumeServiceResponseType"/>
	<xs:complexType name="SetSystemElementsRequestType">
		<xs:sequence>
			<xs:element ref="ElementsNaturalLanguage" minOccurs="0"/>
			<xs:element ref="Message" minOccurs="0"/>
			<xs:element ref="RequestingUserName"/>
			<xs:element name="SystemElements">
				<xs:complexType>
					<xs:sequence>
						<xs:element ref="SystemDescription" minOccurs="0"/>
						<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SetSystemElementsRequest" type="SetSystemElementsRequestType"/>
	<xs:complexType name="SetSystemElementsResponseType">
		<xs:sequence>
			<xs:element ref="UnsupportedElements" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SetSystemElementsResponse" type="SetSystemElementsResponseType"/>
	<xs:element name="ShutdownAllServicesRequest" type="ShutdownAllServicesRequestType"/>
	<xs:element name="ShutdownAllServicesResponse" type="ShutdownAllServicesResponseType"/>
	<xs:element name="ShutdownServiceRequest" type="ShutdownServiceRequestType"/>
	<xs:element name="ShutdownServiceResponse" type="ShutdownServiceResponseType"/>
	<xs:element name="StartupAllServicesRequest" type="StartupAllServiceRequestType"/>
	<xs:element name="StartupAllServicesResponse" type="StartupAllServiceResponseType"/>
	<xs:element name="StartupServiceRequest" type="StartupServiceRequestType"/>
	<xs:element name="StartupServiceResponse" type="StartupServiceResponseType"/>
</xs:schema>
