Bei Antwort-Payloads enthält das ses-payload-Wurzelelement
ein oder mehrere ses-response-Elemente nach dem
ses-header-Element, mit denen die jeweiligen Ergebnisse der
vom Server ausgeführten Operationen zurückgeliefert werden.
Wenn ein Anfrage-Payload vom Search Engine Server vollständig erkannt
und bearbeitet wurde, entspricht jedes ses-response-Element im
Antwort-Payload genau einem ses-request-Element des
Anfrage-Payloads. In diesem Fall enthalten die
ses-response-Elemente Meldungen, die sich auf die Inhalte der
Requests beziehen (Request-Level-Meldungen).
Erhält der Search Engine Server dagegen ein ungültiges Anfrage-Payload
(beispielsweise ohne ses-header-Element oder mit nicht
erkennbaren ses-request-Elementen), so liefert er ein
Antwort-Payload zurück, das nur ein ses-response-Element
enthält, mit dem der allgemeine Fehler gemeldet wird (siehe Payload-Fehler). In diesem Fall bezieht
sich das ses-response-Element auf den Payload
(Payload-Level-Meldung). Ein ses-response-Element ist
folgendermaßen aufgebaut.
<!ELEMENT ses-response (ses-code*)> <!ATTLIST ses-response response-id CDATA #REQUIRED payload-id CDATA #IMPLIED request-id CDATA #IMPLIED success (true | false) #REQUIRED>
Die einzelnen Antworten auf die Requests werden in
ses-code-Elementen zurückgegeben:
<!ELEMENT ses-code ANY> <!ATTLIST ses-code numeric CDATA #REQUIRED phrase CDATA #REQUIRED>
Die Attribute des ses-response-Elements haben die folgende Bedeutung:
response-id
Identifikator der Antwort. Der Identifikator wird vom Erzeuger des Antwort-Payloads gesetzt. Er muss innerhalb aller Payloads, die in einem Kommunikationskontext ausgetauscht werden, eindeutig sein.payload-idIdentifikator des Anfrage-Payloads. Er entspricht dem
payload-id-Attribut des Anfrage-Payloads. Dieses Attribut wird vom Server nur dann eingefügt, wenn dasses-response-Element eine Payload-Level-Meldung im erstenses-code-Element enthält. Ein Client kann folglich am Vorhandensein dieses Attributs erkennen, ob sein Anfrage-Payload als solches (nicht die in ihm enthaltenen Anfragen) vom Server interpretiert werden konnte.request-id
Identifikator des Requests. Er entspricht demreceiver-id-Attribut desses-request-Elements im Anfrage-Payload. Dieses Attribut ist nur vorhanden, wenn dasses-code-Element eine Request-Level-Meldung enthält.success
Der Wert dieses Attributs isttrue, wenn der Request erfolgreich bearbeitet werden konnte. Andernfalls ist erfalse.
Die Ergebnisse der ausgeführten Operationen werden mittels
ses-code-Elementen innerhalb des
ses-response-Elements zurückgeliefert. Die
ses-code-Elemente enthalten eine Erfolgs- oder Fehlermeldung
und weitere XML-Elemente, die das Resultat der Operation oder
gegebenenfalls Fehlerinformationen darstellen.
Die Attribute des ses-code-Elements haben die folgende
Bedeutung:
numeric
Fehlernummer (oder Erfolgsmeldungsnummer). Die den Nummern entsprechenden Meldungen werden im Abschnitt Fehlerbehandlung beschrieben.phrase
Die Beschreibung des Fehlers.
Der Inhalt des ses-code-Elements hängt von der Operation
ab, die im Request angegeben war. Bei Operationen, die nicht erfolgreich
ausgeführt werden konnten, hängt der Inhalt des
ses-code-Elements vom aufgetretenen Fehler ab. Die möglichen
Inhalte des ses-code-Elements werden für jede Operation in den
folgenden Abschnitten aufgeführt.