<application xmlns="http://wadl.dev.java.net/2009/02" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:prefix1="http://service.parabank.parasoft.com/"><grammars><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://service.parabank.parasoft.com/" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://service.parabank.parasoft.com/" version="1.0">
    <xs:import/>
    <xs:element name="historyPoint" type="historyPoint"/>
    <xs:element name="loanResponse" type="loanResponse"/>
    <xs:element name="historyPoints">
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" ref="historyPoint"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://service.parabank.parasoft.com/" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://service.parabank.parasoft.com/" version="1.0">
    <xs:element name="account" type="account"/>
    <xs:element name="billPayResult" type="billPayResult"/>
    <xs:element name="customer" type="customer"/>
    <xs:element name="payee" type="payee"/>
    <xs:element name="position" type="position"/>
    <xs:element name="transaction" type="transaction"/>
    <xs:complexType name="account">
        <xs:sequence>
            <xs:element name="id" type="xs:int"/>
            <xs:element name="customerId" type="xs:int"/>
            <xs:element minOccurs="0" name="type" type="accountType"/>
            <xs:element minOccurs="0" name="balance" type="xs:decimal"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="loanResponse">
        <xs:sequence>
            <xs:element minOccurs="0" name="responseDate" type="xs:dateTime"/>
            <xs:element name="loanProviderName" type="xs:string"/>
            <xs:element name="approved" type="xs:boolean"/>
            <xs:element minOccurs="0" name="message" type="xs:string"/>
            <xs:element minOccurs="0" name="accountId" type="xs:int"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="transaction">
        <xs:sequence>
            <xs:element name="id" type="xs:int"/>
            <xs:element name="accountId" type="xs:int"/>
            <xs:element minOccurs="0" name="type" type="transactionType"/>
            <xs:element minOccurs="0" name="date" type="xs:dateTime"/>
            <xs:element minOccurs="0" name="amount" type="xs:decimal"/>
            <xs:element minOccurs="0" name="description" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="billPayResult">
        <xs:sequence>
            <xs:element name="accountId" type="xs:int"/>
            <xs:element minOccurs="0" name="amount" type="xs:decimal"/>
            <xs:element minOccurs="0" name="payeeName" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="customer">
        <xs:sequence>
            <xs:element name="id" type="xs:int"/>
            <xs:element minOccurs="0" name="firstName" type="xs:string"/>
            <xs:element minOccurs="0" name="lastName" type="xs:string"/>
            <xs:element minOccurs="0" name="address" type="address"/>
            <xs:element minOccurs="0" name="phoneNumber" type="xs:string"/>
            <xs:element minOccurs="0" name="ssn" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="address">
        <xs:sequence>
            <xs:element minOccurs="0" name="street" type="xs:string"/>
            <xs:element minOccurs="0" name="city" type="xs:string"/>
            <xs:element minOccurs="0" name="state" type="xs:string"/>
            <xs:element minOccurs="0" name="zipCode" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="position">
        <xs:sequence>
            <xs:element name="positionId" type="xs:int"/>
            <xs:element name="customerId" type="xs:int"/>
            <xs:element minOccurs="0" name="name" type="xs:string"/>
            <xs:element minOccurs="0" name="symbol" type="xs:string"/>
            <xs:element name="shares" type="xs:int"/>
            <xs:element minOccurs="0" name="purchasePrice" type="xs:decimal"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="payee">
        <xs:sequence>
            <xs:element minOccurs="0" name="accountNumber" type="xs:int"/>
            <xs:element minOccurs="0" name="address" type="address"/>
            <xs:element minOccurs="0" name="name" type="xs:string"/>
            <xs:element minOccurs="0" name="phoneNumber" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="historyPoint">
        <xs:sequence>
            <xs:element minOccurs="0" name="symbol" type="xs:string"/>
            <xs:element minOccurs="0" name="date" type="xs:dateTime"/>
            <xs:element minOccurs="0" name="closingPrice" type="xs:decimal"/>
        </xs:sequence>
    </xs:complexType>
    <xs:simpleType name="accountType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="CHECKING"/>
            <xs:enumeration value="SAVINGS"/>
            <xs:enumeration value="LOAN"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="transactionType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="Credit"/>
            <xs:enumeration value="Debit"/>
        </xs:restriction>
    </xs:simpleType>
</xs:schema>
</grammars><resources base="http://parabank.parasoft.com:8080/parabank/services/bank"><resource path="/"><resource path="accounts/{accountId}"><param name="accountId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="accounts/{accountId}/transactions"><param name="accountId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="accounts/{accountId}/transactions/amount/{amount}"><param name="accountId" style="template" type="xs:int"/><param name="amount" style="template"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="accounts/{accountId}/transactions/fromDate/{fromDate}/toDate/{toDate}"><param name="accountId" style="template" type="xs:int"/><param name="fromDate" style="template" type="xs:string"/><param name="toDate" style="template" type="xs:string"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="accounts/{accountId}/transactions/month/{month}/type/{type}"><param name="accountId" style="template" type="xs:int"/><param name="month" style="template" type="xs:string"/><param name="type" style="template" type="xs:string"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="accounts/{accountId}/transactions/onDate/{onDate}"><param name="accountId" style="template" type="xs:int"/><param name="onDate" style="template" type="xs:string"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="billpay"><method name="POST"><request><param name="accountId" style="query" type="xs:int"/><param name="amount" style="query"/><representation mediaType="application/json"/><representation mediaType="application/xml"/></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="cleanDB"><method name="POST"><response status="204"></response></method></resource><resource path="createAccount"><method name="POST"><request><param name="customerId" style="query" type="xs:int"/><param name="newAccountType" style="query" type="xs:int"/><param name="fromAccountId" style="query" type="xs:int"/></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="customers/update/{customerId}"><param name="customerId" style="template" type="xs:int"/><method name="POST"><request><param name="firstName" style="query" type="xs:string"/><param name="lastName" style="query" type="xs:string"/><param name="street" style="query" type="xs:string"/><param name="city" style="query" type="xs:string"/><param name="state" style="query" type="xs:string"/><param name="zipCode" style="query" type="xs:string"/><param name="phoneNumber" style="query" type="xs:string"/><param name="ssn" style="query" type="xs:string"/><param name="username" style="query" type="xs:string"/><param name="password" style="query" type="xs:string"/></request><response><representation mediaType="application/xml"><param name="result" style="plain" type="xs:string"/></representation><representation mediaType="application/json"><param name="result" style="plain" type="xs:string"/></representation></response></method></resource><resource path="customers/{customerId}"><param name="customerId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="customers/{customerId}/accounts"><param name="customerId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="customers/{customerId}/buyPosition"><param name="customerId" style="template" type="xs:int"/><method name="POST"><request><param name="accountId" style="query" type="xs:int"/><param name="name" style="query" type="xs:string"/><param name="symbol" style="query" type="xs:string"/><param name="shares" style="query" type="xs:int"/><param name="pricePerShare" style="query"/></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="customers/{customerId}/positions"><param name="customerId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="customers/{customerId}/sellPosition"><param name="customerId" style="template" type="xs:int"/><method name="POST"><request><param name="accountId" style="query" type="xs:int"/><param name="positionId" style="query" type="xs:int"/><param name="shares" style="query" type="xs:int"/><param name="pricePerShare" style="query"/></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="deposit"><method name="POST"><request><param name="accountId" style="query" type="xs:int"/><param name="amount" style="query"/></request><response><representation mediaType="application/xml"><param name="result" style="plain" type="xs:string"/></representation><representation mediaType="application/json"><param name="result" style="plain" type="xs:string"/></representation></response></method></resource><resource path="initializeDB"><method name="POST"><response status="204"></response></method></resource><resource path="login/{username}/{password}"><param name="username" style="template" type="xs:string"/><param name="password" style="template" type="xs:string"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="positions/{positionId}"><param name="positionId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="positions/{positionId}/{startDate}/{endDate}"><param name="positionId" style="template" type="xs:int"/><param name="startDate" style="template" type="xs:string"/><param name="endDate" style="template" type="xs:string"/><method name="GET"><request></request><response><representation mediaType="application/xml" element="prefix1:historyPoints"/><representation mediaType="application/json"/></response></method></resource><resource path="requestLoan"><method name="POST"><request><param name="customerId" style="query" type="xs:int"/><param name="amount" style="query"/><param name="downPayment" style="query"/><param name="fromAccountId" style="query" type="xs:int"/></request><response><representation mediaType="application/xml" element="prefix1:loanResponse"/><representation mediaType="application/json"/></response></method></resource><resource path="setParameter/{name}/{value}"><param name="name" style="template" type="xs:string"/><param name="value" style="template" type="xs:string"/><method name="POST"><request></request><response status="204"></response></method></resource><resource path="shutdownJmsListener"><method name="POST"><response status="204"></response></method></resource><resource path="startupJmsListener"><method name="POST"><response status="204"></response></method></resource><resource path="transactions/{transactionId}"><param name="transactionId" style="template" type="xs:int"/><method name="GET"><request></request><response><representation mediaType="application/xml"/><representation mediaType="application/json"/></response></method></resource><resource path="transfer"><method name="POST"><request><param name="fromAccountId" style="query" type="xs:int"/><param name="toAccountId" style="query" type="xs:int"/><param name="amount" style="query"/></request><response><representation mediaType="application/xml"><param name="result" style="plain" type="xs:string"/></representation><representation mediaType="application/json"><param name="result" style="plain" type="xs:string"/></representation></response></method></resource><resource path="withdraw"><method name="POST"><request><param name="accountId" style="query" type="xs:int"/><param name="amount" style="query"/></request><response><representation mediaType="application/xml"><param name="result" style="plain" type="xs:string"/></representation><representation mediaType="application/json"><param name="result" style="plain" type="xs:string"/></representation></response></method></resource></resource></resources></application>