<?xml version="1.0" encoding="UTF-8"?>
<wsdl:description xmlns:wsdl="http://www.w3.org/2005/08/wsdl" xmlns:wsdlx="http://www.w3.org/2005/08/wsdl-extensions" targetNamespace="http://zlst.org/services/2001/Realm" xmlns:tns="http://zlst.org/services/2001/Realm" xmlns:whttp="http://www.w3.org/2005/08/wsdl/http">
	<wsdl:types>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://zlst.org/services/2001/Realm" xmlns="http://zlst.org/services/2001/Realm">
            <xs:element name="CheckPermissionRequest">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Type" type="xs:token" />
                        <xs:element name="Name" type="xs:token" minOccurs="0" />
                        <xs:element name="Actions" type="xs:token" minOccurs="0" />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="ConsumeArtifactRequest">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Artifact" type="xs:token" minOccurs="0" />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
			<xs:element name="GetSessionInfoResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="User" type="xs:anyURI"  minOccurs="0"/>
						<xs:element name="Agent" type="xs:anyURI"  minOccurs="0"/>
						<xs:element name="VirtualSpace" type="xs:anyURI" minOccurs="0"/>
						<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="LoginRequest">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Username" type="xs:token" />
						<xs:element name="Password" type="xs:token" minOccurs="0"/>
						<xs:element name="ProxyFor" type="xs:token" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ProduceArtifactRequest">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="ProviderId" type="xs:token"  minOccurs="0"/>
                        <xs:element name="InteractiveAuthn" type="xs:boolean"  minOccurs="0"/>
                        <xs:element name="RequireAuthn" type="xs:boolean"  minOccurs="0"/>
						<xs:element name="ForceAuthn" type="xs:boolean"  minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="RequestLoginRequest">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="emailAddress" type="xs:token" />
						<xs:element name="emailTemplate" type="xs:anyURI"/>
						<xs:element name="target" type="xs:anyURI" minOccurs="0"/>
						<xs:element name="hold" type="xs:boolean" minOccurs="0"/>
						<xs:element name="lease" type="xs:integer" minOccurs="0"/>
						<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ResolveArtifactRequest">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Artifact" type="xs:token" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ResolveArtifactResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="User" type="xs:anyURI"  minOccurs="0"/>
						<xs:element name="Agent" type="xs:anyURI"  minOccurs="0"/>
						<xs:element name="VirtualSpace" type="xs:anyURI" minOccurs="0"/>
						<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:schema>
	</wsdl:types>
	<wsdl:interface name="Realm">
		<wsdl:fault name="badRequest"/>
        <wsdl:fault name="conflict"/>
        <wsdl:fault name="forbidden"/>
		<wsdl:fault name="notFound"/>
		<wsdl:fault name="redirect" element="xs:anyURI"/>
		<wsdl:fault name="unauthorized"/>
		<wsdl:fault name="operationFailed"/>
        <wsdl:operation name="checkPermission" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
            <wsdl:input messageLabel="In" element="tns:CheckPermissionRequest"/>
        </wsdl:operation>
        <wsdl:operation name="consumeArtifact" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
            <wsdl:input messageLabel="In" element="tns:ConsumeArtifactRequest"/>
        </wsdl:operation>
		<wsdl:operation name="getSessionInfo" pattern="http://www.w3.org/ns/wsdl/robust-out-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:output messageLabel="Out" element="tns:GetSessionInfoResponse"/>
		</wsdl:operation>
		<wsdl:operation name="login" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:input messageLabel="In" element="tns:LoginRequest"/>
		</wsdl:operation>
		<wsdl:operation name="logout" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:input messageLabel="In" element="#none"/>
		</wsdl:operation>
		<wsdl:operation name="produceArtifact" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:input messageLabel="In" element="tns:ProduceArtifactRequest"/>
		</wsdl:operation>
		<wsdl:operation name="requestLogin" pattern="http://www.w3.org/ns/wsdl/robust-in-only" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:input messageLabel="In" element="tns:RequestLoginRequest"/>
		</wsdl:operation>
		<wsdl:operation name="resolveArtifact" pattern="http://www.w3.org/ns/wsdl/in-out" style="http://www.w3.org/2005/08/wsdl/style/iri">
			<wsdl:input messageLabel="In" element="tns:ResolveArtifactRequest"/>
			<wsdl:output messageLabel="Out" element="tns:ResolveArtifactResponse"/>
		</wsdl:operation>
	</wsdl:interface>
	<wsdl:binding name="RealmHtml" interface="Realm" type="http://www.w3.org/2005/08/wsdl/http" whttp:cookies="true">
		<wsdl:fault ref="badRequest" whttp:code="400"/>
		<wsdl:fault ref="conflict" whttp:code="409"/>
		<wsdl:fault ref="forbidden" whttp:code="403"/>
		<wsdl:fault ref="notFound" whttp:code="404"/>
		<wsdl:fault ref="redirect" whttp:code="302">
			<whttp:header name="Location" type="xs:anyURI" required="true"/>
		</wsdl:fault>
		<wsdl:fault ref="unauthorized" whttp:code="401"/>
		<wsdl:fault ref="operationFailed" whttp:code="#any"/>
        <wsdl:operation ref="checkPermission" whttp:method="POST" whttp:location="checkPermission"/>
        <wsdl:operation ref="consumeArtifact" whttp:method="POST" whttp:location="consumeArtifact"/>
		<wsdl:operation ref="getSessionInfo" whttp:method="GET" whttp:location="getSessionInfo"/>
		<wsdl:operation ref="login" whttp:method="POST" whttp:location="login"/>
		<wsdl:operation ref="logout" whttp:method="POST" whttp:location="logout"/>
		<wsdl:operation ref="produceArtifact" whttp:method="POST" whttp:location="produceArtifact"/>
		<wsdl:operation ref="requestLogin" whttp:method="POST" whttp:location="requestLogin"/>
		<wsdl:operation ref="resolveArtifact" whttp:method="POST" whttp:location="resolveArtifact"/>
	</wsdl:binding>
</wsdl:description>
