The response

<?xml version="1.0" encoding="utf-16"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Body>
      <RetrieveIncidentKeysListResponse message="Success" query="" 
       returnCode="0" schemaRevisionDate="2007-04-14" 
       schemaRevisionLevel="1" status="SUCCESS" 
       xsi:schemaLocation="http://servicecenter.peregrine.com/PWS 
       http://<sm server>.americas.hpqcorp.net:13701/sc62server/ws/
       Incident.xsd" xmlns="http://servicecenter.peregrine.com/PWS" 
       xmlns:cmn="http://servicecenter.peregrine.com/PWS/Common" 
       xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
         <keys>
            <IncidentID type="String">IM10001</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10004</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10009</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10016</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10027</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10038</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10049</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10060</IncidentID>
         </keys>
         <keys>
            <IncidentID type="String">IM10061</IncidentID>
         </keys>
      </RetrieveIncidentKeysListResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Having retrieved a list of <keys> elements we can now retrieve these Incidents using a RetrieveIncidentList request, by supplying the collection of keys elements in that request.

You can submit a variable number of <keys> elements in a RetrieveXXXList request, subject only to your program’s ability to handle large XML responses. Java client programs can sometimes run out of memory if the server returns very large responses.

To help prevent the RetrieveXXXListRequest Web Service from causing a Java Heap Space out-of-memory error when retrieving a list of records, the following applies for the response of a RetrieveXXXList request:

  • When there is neither a start attribute nor a count attribute, return all records/keys.
  • When there is a valid start value but no count attribute, return all records starting from the start attribute.
  • When there is a valid start attribute and valid count attribute, return the number of keys/records starting from the start attribute.
  • When there is a negative start attribute, return from the first record.
  • When there is a negative count attribute, return one record.
  • When the start attribute is bigger than the total number of records/keys, no record is returned.