Request-Element

Bei Anfrage-Payloads folgen auf das cm-header-Element im cm-payload-Wurzelelement ein oder mehrere cm-request-Elemente. Diese Elemente spezifizieren die Operationen, die vom Content Management Server ausgeführt werden sollen.

<!ELEMENT cm-request (%cm.cm-request;)>
<!ATTLIST cm-request
  request-id CDATA #REQUIRED
  preclusive (true | false) "false"
>

Die Unterelemente des cm-request-Elements sind in der DTD definiert, die ab Zum Aufbau der Referenz erläutert wird und im Abschnitt CRUL als DTD komplett abgedruckt ist. Ein cm-request-Element hat folgende Attribute:

  • request-id
    Identifikator des Requests. Dieser Identifikator wird vom Erzeuger des Anfrage-Payloads vergeben. Er muss innerhalb aller Payloads, die in einem bestimmten Kommunikationskontext ausgetauscht werden, eindeutig sein. Es reicht nicht aus, dass die ID innerhalb des Requests eindeutig ist.
  • preclusive
    Wahrheitswert (true oder false). Das preclusive-Attribut erlaubt dem CMS-Client, die Requests zu markieren, die für die weitere Bearbeitung des Payloads kritisch sind. Wenn die Bearbeitung eines als preclusive markierten Requests fehlschlägt, werden alle weitere Requests im Payload nicht bearbeitet, sondern mit einer Fehlermeldung beantwortet.

Alle Anfragen in einem Payload werden sequenziell, beginnend bei der ersten Anfrage, bearbeitet. Dadurch ist es einem Client möglich, auch voneinander abhängende Requests in einem einzigen Anfrage-Payload unterzubringen. So kann beispielsweise ein Client in einem Payload zunächst eine Vorlage anlegen, um anschließend Dateien zu erzeugen, die auf dieser Vorlage beruhen. Mit dem preclusive-Attribut kann der Client ferner sicherstellen, dass die abhängige Anfrage nur dann bearbeitet wird, wenn die vorausgehende keinen Fehler erzeugt hat.