<?xml version="1.0" encoding="UTF-8"?>
<!-- $Id: WorkspaceManagement.wsdl,v 1.1 2008/07/03 16:16:25 JPearce Exp $ -->
<!--
	PLCS PLM Webservices 
	Author: 		Jonas Rosen, Eurostep Group
	Owner:  	Developed by Eurostep and supplied to PLCS OASIS TC.
	Purpose: 	PLCS PLM Workspace management services
	Specification document:: ../../docs/PLCSPLMWebServicesDefinitions.doc
-->
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:plm="http://www.plcs.org/PLMServices" xmlns:h="http://www.plcs.org/Headers" xmlns:workspace="http://www.plcs.org/Workspace" xmlns:systypes="http://www.plcs.org/System/Types" xmlns:ns="http://www.plcs.org/PLMServices/Types" xmlns:ns1="http://www.plcs.org/PLMServices/RepresentingBusinessObjects" targetNamespace="http://www.plcs.org/PLMServices">
	<types>
		<xs:schema elementFormDefault="qualified">
			<xs:import namespace="http://www.plcs.org/Headers" schemaLocation="../xsd/Headers.xsd"/>
			<xs:import namespace="http://www.plcs.org/Workspace" schemaLocation="../xsd/Workspace/WorkspaceMsg.xsd"/>
			<xs:import namespace="http://www.plcs.org/System/Types" schemaLocation="../xsd/System.xsd"/>
		</xs:schema>
	</types>
	<message name="AuthenticateAuthHeader">
		<part name="AuthHeader" element="h:AuthHeader"/>
	</message>
	<message name="UpdatePLM_SubscriberProfileHeader">
		<part name="UpdatePLM_SubscriberProfileHeader" element="h:UpdatePLM_SubscriberProfileHeader"/>
	</message>
	<message name="Fel">
		<part name="parameter" type="xs:string"/>
	</message>
	<message name="GetFavouritesSoapIn">
		<part name="parameters" element="workspace:GetFavourites"/>
	</message>
	<message name="GetFavouritesSoapOut">
		<part name="parameters" element="workspace:GetFavouritesResponse"/>
	</message>
	<message name="GetMyRolesSoapIn">
		<part name="parameters" element="workspace:GetMyRoles"/>
	</message>
	<message name="GetMyRolesSoapOut">
		<part name="parameters" element="workspace:GetMyRolesResponse"/>
	</message>
	<message name="GetRolesForUserSoapIn">
		<part name="parameters" element="workspace:GetRolesForUser"/>
	</message>
	<message name="GetRolesForUserSoapOut">
		<part name="parameters" element="workspace:GetRolesForUserResponse"/>
	</message>
	<message name="GetMyCurrentRoleSoapIn">
		<part name="parameters" element="workspace:GetMyCurrentRole"/>
	</message>
	<message name="GetMyCurrentRoleSoapOut">
		<part name="parameters" element="workspace:GetMyCurrentRoleResponse"/>
	</message>
	<message name="SetMyCurrentRoleSoapIn">
		<part name="parameters" element="workspace:SetMyCurrentRole"/>
	</message>
	<message name="SetMyCurrentRoleSoapOut">
		<part name="parameters" element="workspace:SetMyCurrentRoleResponse"/>
	</message>
	<message name="CreateFavouriteSoapIn">
		<part name="parameters" element="workspace:CreateFavourite"/>
	</message>
	<message name="CreateFavouriteSoapOut">
		<part name="parameters" element="workspace:CreateFavouriteResponse"/>
	</message>
	<message name="RemoveFavouriteSoapIn">
		<part name="parameters" element="workspace:RemoveFavourite"/>
	</message>
	<message name="RemoveFavouriteSoapOut">
		<part name="parameters" element="workspace:RemoveFavouriteResponse"/>
	</message>
	<message name="GetMeSoapIn">
		<part name="parameters" element="workspace:GetMe"/>
	</message>
	<message name="GetMeSoapOut">
		<part name="parameters" element="workspace:GetMeResponse"/>
	</message>
	<message name="GetMyAssignmentsSoapIn">
		<part name="parameters" element="workspace:GetMyAssignments"/>
	</message>
	<message name="GetMyAssignmentsSoapOut">
		<part name="parameters" element="workspace:GetMyAssignmentsResponse"/>
	</message>
	<message name="GetMyNotificationsSoapIn">
		<part name="parameters" element="workspace:GetMyNotifications"/>
	</message>
	<message name="GetMyNotificationsSoapOut">
		<part name="parameters" element="workspace:GetMyNotificationsResponse"/>
	</message>
	<message name="MarkNotificationAsReadSoapIn">
		<part name="parameters" element="workspace:MarkNotificationAsRead"/>
	</message>
	<message name="MarkNotificationAsReadSoapOut">
		<part name="parameters" element="workspace:MarkNotificationAsReadResponse"/>
	</message>
	<message name="RemoveNotificationSoapIn">
		<part name="parameters" element="workspace:RemoveNotification"/>
	</message>
	<message name="RemoveNotificationSoapOut">
		<part name="parameters" element="workspace:RemoveNotificationResponse"/>
	</message>
	<message name="GetMySubscriberProfilesSoapIn">
		<part name="parameters" element="workspace:GetMySubscriberProfiles"/>
	</message>
	<message name="GetMySubscriberProfilesSoapOut">
		<part name="parameters" element="workspace:GetMySubscriberProfilesResponse"/>
	</message>
	<message name="CreateNotificationSoapIn">
		<part name="parameters" element="workspace:CreateNotification"/>
	</message>
	<message name="CreateNotificationSoapOut">
		<part name="parameters" element="workspace:CreateNotificationResponse"/>
	</message>
	<message name="CreateSubscriberProfileSoapIn">
		<part name="parameters" element="workspace:CreateSubscriberProfile"/>
	</message>
	<message name="CreateSubscriberProfileSoapOut">
		<part name="parameters" element="workspace:CreateSubscriberProfileResponse"/>
	</message>
	<message name="UpdateSubscriberProfileSoapIn">
		<part name="parameters" element="workspace:UpdateSubscriberProfile"/>
	</message>
	<message name="UpdateSubscriberProfileSoapOut">
		<part name="parameters" element="workspace:UpdateSubscriberProfileResponse"/>
	</message>
	<portType name="WorkspaceManagementSoap">
		<operation name="GetMyRoles">
			<input message="plm:GetMyRolesSoapIn"/>
			<output message="plm:GetMyRolesSoapOut"/>
		</operation>
		<operation name="GetRolesForUser">
			<input message="plm:GetRolesForUserSoapIn"/>
			<output message="plm:GetRolesForUserSoapOut"/>
		</operation>
		<operation name="GetMyCurrentRole">
			<input message="plm:GetMyCurrentRoleSoapIn"/>
			<output message="plm:GetMyCurrentRoleSoapOut"/>
		</operation>
		<operation name="SetMyCurrentRole">
			<input message="plm:SetMyCurrentRoleSoapIn"/>
			<output message="plm:SetMyCurrentRoleSoapOut"/>
		</operation>
		<operation name="CreateFavourite">
			<input message="plm:CreateFavouriteSoapIn"/>
			<output message="plm:CreateFavouriteSoapOut"/>
		</operation>
		<operation name="CreateSubscriberProfile">
			<input message="plm:CreateSubscriberProfileSoapIn"/>
			<output message="plm:CreateSubscriberProfileSoapOut"/>
		</operation>
		<operation name="UpdateSubscriberProfile">
			<input message="plm:UpdateSubscriberProfileSoapIn"/>
			<output message="plm:UpdateSubscriberProfileSoapOut"/>
		</operation>
		<operation name="CreateNotification">
			<input message="plm:CreateNotificationSoapIn"/>
			<output message="plm:CreateNotificationSoapOut"/>
		</operation>
		<operation name="GetFavourites">
			<input message="plm:GetFavouritesSoapIn"/>
			<output message="plm:GetFavouritesSoapOut"/>
			<!--<fault name="FaultName" message="Fault"/>-->
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="RemoveFavourite">
			<input message="plm:RemoveFavouriteSoapIn"/>
			<output message="plm:RemoveFavouriteSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="GetMe">
			<input message="plm:GetMeSoapIn"/>
			<output message="plm:GetMeSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="GetMyAssignments">
			<input message="plm:GetMyAssignmentsSoapIn"/>
			<output message="plm:GetMyAssignmentsSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="GetMyNotifications">
			<input message="plm:GetMyNotificationsSoapIn"/>
			<output message="plm:GetMyNotificationsSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="MarkNotificationAsRead">
			<input message="plm:MarkNotificationAsReadSoapIn"/>
			<output message="plm:MarkNotificationAsReadSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="RemoveNotification">
			<input message="plm:RemoveNotificationSoapIn"/>
			<output message="plm:RemoveNotificationSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
		<operation name="GetMySubscriberProfiles">
			<input message="plm:GetMySubscriberProfilesSoapIn"/>
			<output message="plm:GetMySubscriberProfilesSoapOut"/>
			<!--<fault name="FaultName" message="plm:Fel"/>-->
		</operation>
	</portType>
	<binding name="WorkspaceManagementSoap" type="plm:WorkspaceManagementSoap">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="GetMyRoles">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMyRoles" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetRolesForUser">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetRolesForUser" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetMyCurrentRole">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMyCurrentRole" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="SetMyCurrentRole">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/SetMyCurrentRole" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="CreateFavourite">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/CreateFavourite" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="CreateSubscriberProfile">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/CreateSubscriberProfile" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="UpdateSubscriberProfile">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/UpdateSubscriberProfile" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
				<soap:header message="plm:UpdatePLM_SubscriberProfileHeader" part="UpdatePLM_SubscriberProfileHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="CreateNotification">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/CreateNotification" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
		</operation>
		<operation name="GetFavourites">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetFavourites" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="RemoveFavourite">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/RemoveFavourite" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="GetMe">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMe" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="GetMyAssignments">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMyAssignments" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="GetMyNotifications">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMyNotifications" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="MarkNotificationAsRead">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/MarkNotificationAsRead" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="RemoveNotification">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/RemoveNotification" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
		<operation name="GetMySubscriberProfiles">
			<soap:operation soapAction="http://www.plcs.org/PLMServices/WorkspaceManagement/GetMySubscriberProfiles" style="document"/>
			<input>
				<soap:body use="literal"/>
				<soap:header message="plm:AuthenticateAuthHeader" part="AuthHeader" use="literal"/>
			</input>
			<output>
				<soap:body use="literal"/>
			</output>
			<!--<fault name="FaultName"/>-->
		</operation>
	</binding>
	<service name="WorkspaceManagement">
		<port name="WorkspaceManagementSoap" binding="plm:WorkspaceManagementSoap">
			<soap:address location="http://www.share-a-space.com/PLCSPLMServices/Service.asmx"/>
		</port>
	</service>
	<!--
	 The service tag can be omitted.
	-->
	<!--
		Here comes error messages
	-->
	<!--
		Here comes Authenticate messages
	-->
	<!--
		Here comes project information
	-->
	<!--<message name="AutenticateSoapIn">
		<part name="parameters" element="sys:Authenticate"/>
		<part name="user" type="xs:string"/>
		<part name="password" type="xs:string"/>
		<part name="project" type="xs:string"/>
	</message>
	<message name="AutenticateSoapOut">
		<xs:complexType/>
	</message>-->
</definitions>
