<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://schema.wamu.com/crm/customer/v2.12/" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schema.wamu.com/crm/customer/v2.12/" elementFormDefault="unqualified" attributeFormDefault="unqualified" version="2005-07-01">
	<xs:group name="NameGroup">
		<xs:sequence>
			<xs:element name="FirstName" type="xs:string" minOccurs="0"/>
			<xs:element name="MiddleName" type="xs:string" minOccurs="0"/>
			<xs:element name="MiddleInitial" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>To be removed. Same as MiddleName of v2.0</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="LastName" type="xs:string" minOccurs="0"/>
			<xs:element name="Suffix" type="xs:string" minOccurs="0"/>
			<xs:element name="FullName" type="xs:string" minOccurs="0"/>
			<xs:element name="MaritalStatus" type="xs:string" minOccurs="0"/>
			<xs:element name="DateOfBirth" type="xs:date" minOccurs="0"/>
			<xs:element name="SSN" type="xs:string" minOccurs="0"/>
			<xs:element name="Age" type="xs:string" minOccurs="0"/>
			<xs:element name="Prefix" type="xs:string" minOccurs="0"/>
			<xs:element name="TaxIdIndicator" type="xs:string" minOccurs="0"/>
			<xs:element name="PendingDeleteIndicator" type="xs:string" minOccurs="0"/>
			<xs:element name="Id" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:group name="CustomerInfoGroup">
		<xs:sequence>
			<xs:element name="CustomerNumber" type="xs:string" minOccurs="0"/>
			<xs:element name="CompanyId" type="xs:string" minOccurs="0"/>
			<xs:element name="TieBreaker" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Use as a filter to obtain distinct Borrower reccord.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="RelationshipCode" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Account to Customer relationship Code.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CostCenter" type="xs:string" minOccurs="0"/>
			<xs:element name="EmployeeIndicator" type="xs:string" minOccurs="0"/>
			<xs:element name="FirstTimeBuyerIndicator" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:group name="ContactInfoGroup">
		<xs:sequence>
			<xs:element name="EmailAddress" type="xs:string" minOccurs="0"/>
			<xs:element name="MailingAddress" type="AddressType" minOccurs="0"/>
			<xs:element name="Phone" type="PhoneType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="BillingAddress" type="AddressType" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:complexType name="AddressType">
		<xs:sequence>
			<xs:element name="AddressName" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressName1" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressLine1" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressLine2" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressLine3" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressLine4" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressLine5" type="xs:string" minOccurs="0"/>
			<xs:element name="AddressDetail" type="AddressDetailType" minOccurs="0"/>
			<xs:element name="City" type="xs:string" minOccurs="0"/>
			<xs:element name="Zip" type="xs:string" minOccurs="0"/>
			<xs:element name="State" type="xs:string" minOccurs="0"/>
			<xs:element name="County" type="xs:string" minOccurs="0"/>
			<xs:element name="CountyCode" type="xs:string" minOccurs="0"/>
			<xs:element name="Country" type="xs:string" minOccurs="0"/>
			<xs:element name="Group" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>This is used by ImagingWorkflow</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CarrierRoute" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The carrier route code for the mailing address of the mortgagor.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ForeignAddressIndicator" type="xs:string" minOccurs="0"/>
			<xs:element name="ForeignAddressFlag" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>To be removed. Same as ForeignAddressIndicator of v2.0</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FullAddress" type="xs:string" minOccurs="0"/>
			<xs:element name="Salutation" type="xs:string" minOccurs="0"/>
			<xs:element name="CopyMailingAddressToBilling" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CustomerType">
		<xs:sequence>
			<xs:group ref="NameGroup" minOccurs="0"/>
			<xs:group ref="ContactInfoGroup" minOccurs="0"/>
			<xs:group ref="CustomerInfoGroup" minOccurs="0"/>
			<xs:group ref="CustomerAccountRelationGroup" minOccurs="0"/>
			<xs:group ref="CustomerCreditGroup" minOccurs="0"/>
			<xs:group ref="CustomerPrivacyGroup" minOccurs="0"/>
			<xs:group ref="CustomerExpenseGroup" minOccurs="0"/>
			<xs:group ref="CustomerPersonalGroup" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CustomerNameType">
		<xs:sequence>
			<xs:group ref="NameGroup"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PhoneType">
		<xs:sequence>
			<xs:element name="Number" type="xs:string" minOccurs="0"/>
			<xs:element name="Description" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Example: WORK, CELL, HOME, FAX, OTHER</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Extension" type="xs:string" minOccurs="0"/>
			<xs:element name="LocationCode" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:group name="CustomerAccountRelationGroup">
		<xs:sequence>
			<xs:element name="CustomerAccountRelation" type="CustomerAccountRelationType" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:group>
	<xs:complexType name="CustomerAccountRelationType">
		<xs:sequence>
			<xs:element name="AccountNumber" type="xs:string" minOccurs="0"/>
			<xs:element name="AccountType" type="xs:string" minOccurs="0"/>
			<xs:element name="RelationshipCode" type="xs:string" minOccurs="0"/>
			<xs:element name="Status" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:group name="CustomerCreditGroup">
		<xs:sequence>
			<xs:element name="CreditQualification" type="CreditQualificationType" minOccurs="0"/>
			<xs:element name="MortgageCreditBureauStatus" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:complexType name="CreditQualificationType">
		<xs:sequence>
			<xs:element name="PersonalIncome" type="PersonalIncomeType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="CreditScore" type="CreditScoreType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="SelfEmployedIndicator" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PersonalIncomeType">
		<xs:sequence>
			<xs:element name="IncomeType" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Average, Monthly, Gross	</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="IncomeAmount" type="xs:double" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CreditScoreType">
		<xs:sequence>
			<xs:element name="ScoreType" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>ScoreType is a credit rating and agency</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ScoreDate" type="xs:date" minOccurs="0"/>
			<xs:element name="ScoreValue" type="xs:double" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AddressDetailType">
		<xs:sequence>
			<xs:element name="Number" type="xs:string" minOccurs="0"/>
			<xs:element name="Direction" type="xs:string" minOccurs="0"/>
			<xs:element name="StreetName" type="xs:string" minOccurs="0"/>
			<xs:element name="UnitNumber" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:group name="CustomerPrivacyGroup">
		<xs:sequence>
			<xs:element name="PrivacyIndicator" type="xs:string" minOccurs="0"/>
			<xs:element name="SolicitationIndicator" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:complexType name="MonthlyExpenseType">
		<xs:sequence>
			<xs:element name="MonthlyHousingExpenseAmount" type="xs:double" minOccurs="0"/>
			<!-- Added by Piyush Srivastava for Q4 Release 07/13/06 , needs to be reviewed by Salim-->
			<xs:element name="MonthlyDebtAmount"  type="xs:double"  minOccurs="0"/>
			<!-- Added part ends-->
		</xs:sequence>
	</xs:complexType>
	<xs:group name="CustomerExpenseGroup">
		<xs:sequence>
			<xs:element name="MonthlyExpense" type="MonthlyExpenseType" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<xs:group name="CustomerPersonalGroup">
		<xs:sequence>
			<xs:element name="RaceCode" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="GenderCode" type="xs:string" minOccurs="0"/>
			<xs:element name="EthnicityCode" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
</xs:schema>
