Response-Element

Bei Antwort-Payloads enthält das cm-payload-Wurzelelement ein oder mehrere cm-response-Elemente nach dem cm-header-Element, mit denen die jeweiligen Ergebnisse der vom NPS-Server ausgeführten Operationen zurückgeliefert werden.

Wenn ein Anfrage-Payload vom NPS-Server vollständig erkannt und bearbeitet wurde, entspricht jedes cm-response-Element im Antwort-Payload genau einem cm-request-Element des Anfrage-Payloads. In diesem Fall enthalten die cm-response-Elemente Meldungen, die sich auf die Inhalte der Requests beziehen (Request-Level-Meldungen).

Erhält der Content Management Server dagegen ein ungültiges Anfrage-Payload (beispielsweise ohne cm-header-Element oder mit nicht erkennbaren cm-request-Elementen), so liefert er ein Antwort-Payload zurück, das nur ein cm-response-Element enthält, mit dem der allgemeine Fehler gemeldet wird. In diesem Fall bezieht sich das cm-response-Element auf den Payload (Payload-Level-Meldung). Ein cm-response-Element ist folgendermaßen aufgebaut.

<!ELEMENT cm-response (cm-code*)>
<!ATTLIST cm-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 cm-code-Elementen zurückgegeben:

<!ELEMENT cm-code ANY>
<!ATTLIST cm-code
  numeric CDATA #REQUIRED
  phrase CDATA #REQUIRED
>

Die Attribute des cm-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-id
    Identifikator des Anfrage-Payloads. Er entspricht dem payload-id-Attribut des Anfrage-Payloads. Dieses Attribut wird vom Server nur dann eingefügt, wenn das cm-response-Element eine Payload-Level-Meldung im ersten cm-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 dem receiver-id-Attribut des cm-request- Elements im Anfrage-Payload. Dieses Attribut ist nur vorhanden, wenn das cm-code-Element eine Request-Level-Meldung enthält.
  • success
    Der Wert dieses Attributs ist true, wenn der Request erfolgreich bearbeitet werden konnte. Andernfalls ist er false.

Bitte beachten Sie, dass innerhalb eines Requests mehrere Operationen ausgeführt werden können. In diesem Fall enthält das success-Attribut das logische Und der Ergebnisse aller ausgeführten Operationen. Das heißt, success ist nur dann true, wenn alle Operationen erfolgreich waren.

Die Ergebnisse der ausgeführten Operationen werden mittels cm-code-Elementen innerhalb des cm-response-Elements zurückgeliefert. Die cm-code-Elemente enthalten eine Erfolgs- oder Fehlermeldung und weitere XML-Elemente, die das Resultat der Operation oder gegebenenfalls Fehlerinformationen darstellen.

Die Attribute des cm-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 cm-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 cm-code-Elements vom aufgetretenen Fehler ab. Die möglichen Inhalte des cm-code-Elements werden für jede Operation in der XML-Referenz aufgeführt.