<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="urn:TalisKeystoneViewMyAccount" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="urn:TalisKeystoneViewMyAccount" xmlns:intf="urn:TalisKeystoneViewMyAccount" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:key="http://talis.com/keystone/server/ViewMyAccount">
	<wsdl:types>
		<xsd:schema elementFormDefault="qualified" targetNamespace="http://talis.com/keystone/server/ViewMyAccount" xmlns:xs="http://www.w3.org/2001/XMLSchema">
			<xsd:element name="ViewMyAccountRequest">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="VisibleUserIdentifierType" type="key:IdentifierType"/>
						<xsd:element name="VisibleUserIdentifier" type="xsd:string"/>
						<xsd:element name="Desired" type="key:Desired"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:simpleType name="IdentifierType">
				<xsd:restriction base="xsd:string">
					<xsd:enumeration value="Barcode"/>
					<xsd:enumeration value="InstitutionIdNumber"/>
					<xsd:enumeration value="UserId"/>
				</xsd:restriction>
			</xsd:simpleType>
			<xsd:complexType name="Desired">
				<xsd:sequence>
					<xsd:element name="Summary" type="xsd:boolean"/>
					<xsd:element name="AccessURL" type="xsd:boolean"/>
					<xsd:element name="FiscalAccount" type="xsd:boolean"/>
					<xsd:element name="LoanedItems" type="xsd:boolean"/>
					<xsd:element name="ReservedItems" type="xsd:boolean"/>
					<xsd:element name="RequestedItems" type="xsd:boolean"/>
					<xsd:element name="BookedItems" type="xsd:boolean"/>
					<xsd:element name="BorrowerMessages" type="xsd:boolean"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="BookedItemsCountValue" type="xsd:nonNegativeInteger"/>
			<xsd:element name="CurrencyCode" type="xsd:string"/>
			<xsd:element name="FormatedMonetaryValue" type="xsd:double"/>
			<xsd:element name="LoanedItemsCountValue" type="xsd:nonNegativeInteger"/>
			<xsd:element name="TalisKeystoneResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="key:ViewMyAccountResponse"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ViewMyAccountResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="key:ResponseHeader"/>
						<xsd:element minOccurs="0" name="userName" type="xsd:string"/>
						<xsd:element minOccurs="0" name="UniqueUserId" type="key:UniqueUserId"/>
						<xsd:element minOccurs="0" name="UserFiscalAccount" type="key:UserFiscalAccount"/>
						<xsd:element minOccurs="0" name="BorrowerMessages" type="key:BorrowerMessages"/>
						<xsd:element minOccurs="0" ref="key:LoanedItemsCountValue"/>
						<xsd:element minOccurs="0" ref="key:ReservedItemsCountValue"/>
						<xsd:element minOccurs="0" ref="key:RequestedItemsCountValue"/>
						<xsd:element minOccurs="0" ref="key:BookedItemsCountValue"/>
						<xsd:element minOccurs="0" name="UserTransaction" type="key:UserTransaction"/>
						<xsd:element minOccurs="0" ref="key:UserAccessURL"/>
					</xsd:sequence>
					<xsd:attribute name="version" type="xsd:double" use="required"/>
				</xsd:complexType>
			</xsd:element>
			<xsd:complexType name="UserTransaction">
				<xsd:sequence>
					<xsd:element maxOccurs="unbounded" minOccurs="0" name="LoanedItem" type="key:LoanedItem"/>
					<xsd:element maxOccurs="unbounded" minOccurs="0" name="ReservedItem" type="key:ReservedItem"/>
					<xsd:element maxOccurs="unbounded" minOccurs="0" name="RequestedItem" type="key:RequestedItem"/>
					<xsd:element maxOccurs="unbounded" minOccurs="0" name="BookedItem" type="key:BookedItem"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="LoanedItem">
				<xsd:sequence>
					<xsd:element name="UniqueItemId" type="key:UniqueItemId"/>
					<xsd:element ref="key:ReminderLevel"/>
					<xsd:element ref="key:DateDue"/>
					<xsd:element ref="key:Overdue"/>
					<xsd:element name="Amount" type="key:Amount"/>
					<xsd:element name="BibliographicDescription" type="key:BibliographicDescription"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="ReservedItem">
				<xsd:sequence>
					<xsd:element ref="key:State"/>
					<xsd:element ref="key:NeedBeforeDate"/>
					<xsd:element ref="key:DateOfUserRequest"/>
					<xsd:element ref="key:Location"/>
					<xsd:element name="BibliographicDescription" type="key:BibliographicDescription"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="RequestedItem">
				<xsd:sequence>
					<xsd:element ref="key:State"/>
					<xsd:element ref="key:NeedBeforeDate"/>
					<xsd:element ref="key:DateOfUserRequest"/>
					<xsd:element ref="key:Location"/>
					<xsd:element name="BibliographicDescription" type="key:BibliographicDescription"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="BookedItem">
				<xsd:sequence>
					<xsd:element ref="key:Slot"/>
					<xsd:element name="BibliographicDescription" type="key:BibliographicDescription"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="BibliographicDescription">
				<xsd:sequence>
					<xsd:element minOccurs="0" ref="key:Author"/>
					<xsd:element minOccurs="0" ref="key:Title"/>
					<xsd:element minOccurs="0" ref="key:Publisher"/>
					<xsd:element minOccurs="0" ref="key:BibliographicItemIdentifier"/>
					<xsd:element minOccurs="0" ref="key:PublicationDate"/>
					<xsd:element minOccurs="0" ref="key:Edition"/>
					<xsd:element minOccurs="0" ref="key:SeriesTitle"/>
					<xsd:element minOccurs="0" ref="key:MediumType"/>
					<xsd:element minOccurs="0" ref="key:Class"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="UniqueItemId">
				<xsd:sequence>
					<xsd:element minOccurs="0" name="UniqueAgencyId" type="key:UniqueAgencyId"/>
					<xsd:element ref="key:ItemIdentifierValue"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="MonetaryValue" type="xsd:nonNegativeInteger"/>
			<xsd:element name="RequestedItemsCountValue" type="xsd:nonNegativeInteger"/>
			<xsd:element name="ReservedItemsCountValue" type="xsd:nonNegativeInteger"/>
			<xsd:element name="ResponseHeader">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="FromAgencyId" type="key:UniqueAgencyId"/>
						<xsd:element minOccurs="0" name="ToAgencyId" type="key:UniqueAgencyId"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Scheme" type="xsd:anyURI"/>
			<xsd:complexType name="UniqueAgencyId">
				<xsd:sequence>
					<xsd:element ref="key:Scheme"/>
					<xsd:element ref="key:Value"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:complexType name="UniqueUserId">
				<xsd:sequence>
					<xsd:element name="UniqueAgencyId" type="key:UniqueAgencyId"/>
					<xsd:element ref="key:UserIdentifierValue"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="UserAccessURL" type="xsd:anyURI"/>
			<xsd:complexType name="BorrowerMessages">
				<xsd:sequence>
					<xsd:element maxOccurs="unbounded" minOccurs="0" ref="key:BorrowerMessage"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="BorrowerMessage">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="key:MessageText"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:complexType name="UserFiscalAccount">
				<xsd:sequence>
					<xsd:element name="AccountBalance" type="key:Amount"/>
					<xsd:element maxOccurs="unbounded" minOccurs="0" ref="key:AccountDetails"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="AccountDetails">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element minOccurs="0" ref="key:AccrualDate"/>
						<xsd:element ref="key:FiscalTransactionInformation"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="FiscalTransactionInformation">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="key:FiscalTransactionType"/>
						<xsd:element name="Amount" type="key:Amount"/>
						<xsd:element minOccurs="0" ref="key:ItemDetails"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:complexType name="Amount">
				<xsd:sequence>
					<xsd:element ref="key:CurrencyCode"/>
					<xsd:element ref="key:MonetaryValue"/>
					<xsd:element ref="key:FormatedMonetaryValue"/>
				</xsd:sequence>
			</xsd:complexType>
			<xsd:element name="AccrualDate" type="xsd:dateTime"/>
			<xsd:element name="UserIdentifierValue" type="xsd:int"/>
			<xsd:element name="Value" type="xsd:string"/>
			<xsd:element name="ItemDetails" type="xsd:string"/>
			<xsd:element name="DateDue" type="xsd:dateTime"/>
			<xsd:element name="Overdue" type="xsd:boolean"/>
			<xsd:element name="Author" type="xsd:string"/>
			<xsd:element name="Title" type="xsd:string"/>
			<xsd:element name="Publisher" type="xsd:string"/>
			<xsd:element name="BibliographicItemIdentifier" type="xsd:string"/>
			<xsd:element name="PublicationDate" type="xsd:string"/>
			<xsd:element name="Edition" type="xsd:string"/>
			<xsd:element name="SeriesTitle" type="xsd:string"/>
			<xsd:element name="MediumType" type="xsd:string"/>
			<xsd:element name="Class" type="xsd:string"/>
			<xsd:element name="State" type="xsd:string"/>
			<xsd:element name="NeedBeforeDate" type="xsd:dateTime"/>
			<xsd:element name="DateOfUserRequest" type="xsd:dateTime"/>
			<xsd:element name="Location" type="xsd:string"/>
			<xsd:element name="Slot" type="xsd:string"/>
			<xsd:element name="ItemIdentifierValue" type="xsd:string"/>
			<xsd:element name="ReminderLevel" type="xsd:nonNegativeInteger"/>
			<xsd:element name="FiscalTransactionType" type="xsd:string"/>
			<xsd:element name="ProcessingErrorValue" type="xsd:string"/>
			<xsd:element name="MessagingErrorValue" type="xsd:string"/>
			<xsd:element name="ErrorMessage" type="xsd:string"/>
			<xsd:element name="MessageText" type="xsd:string"/>
		</xsd:schema>
	</wsdl:types>
	<wsdl:message name="getViewMyAccountRequest">
		<wsdl:part name="ViewMyAccountRequest" element="key:ViewMyAccountRequest"/>
	</wsdl:message>
	<wsdl:message name="getViewMyAccountResponse">
		<wsdl:part name="getViewMyAccountReturn" element="key:TalisKeystoneResponse"/>
	</wsdl:message>
	<wsdl:portType name="ViewMyAccount">
		<wsdl:operation name="getViewMyAccount" parameterOrder="ViewMyAccountRequest">
			<wsdl:input name="getViewMyAccountRequest" message="impl:getViewMyAccountRequest"/>
			<wsdl:output name="getViewMyAccountResponse" message="impl:getViewMyAccountResponse"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="ViewMyAccountSoapBinding" type="impl:ViewMyAccount">
		<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="getViewMyAccount">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="ViewMyAccountService">
		<wsdl:port binding="impl:ViewMyAccountSoapBinding" name="ViewMyAccount">
			<wsdlsoap:address location="http://localhost/TalisKeystone/services/ViewMyAccount"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>
