Payloads

Die XML-Dokumente, die Clients über die XML-Schnittstelle mit dem Search Engine Server austauschen, werden als "Payloads" bezeichnet. Das Element ses-payload ist das Wurzelelement aller Anfrage- und Antwort-Dokumente:

<!ELEMENT ses-payload (ses-header, (ses-response+ | ses-request+))>
<!ATTLIST ses-payload
  payload-id CDATA #REQUIRED
  timestamp CDATA #REQUIRED
  version CDATA #REQUIRED
>

Die Attribute des ses-payload-Elements haben die folgende Bedeutung:

  • payload-id
    Identifikator des Payloads. Dieser Identifikator wird vom Erzeuger des Payloads generiert und muss innerhalb eines Kommunikationskontexts eindeutig sein. Ein solcher Kontext wird durch den Search Engine Server (beispielsweise einer Firma) und alle Clients gebildet, die mit dem Server kommunizieren. In der Regel wird die payload-id durch einen Algorithmus generiert.
  • timestamp
    Datum und Uhrzeit (Zeitstempel) der Erzeugung des Payloads. Der Zeitstempel muss in kanonischer Form als 14stelliger String (von links beginnend: Jahr vierstellig, Monat zweistellig, Tag zweistellig, Stunde zweistellig, Minute zweistellig, Sekunde zweistellig) in GMT angegeben sein (Beispiel: 20110716020223).
  • version
    Version des XML-Schnittstellenprotokolls. Der Aufbau des Payloads ist von der Version abhängig. Zum Zeitpunkt der Fertigstellung dieses Handbuchs hat das XML-Schnittstellenprotokoll die Version 2.1.

Ein Client gibt bei einer Anfrage mit dem Wert des version-Attributs an, welche Version des XML-Schnittstellenprotokolls er verwendet.

Der Search Engine Server unterstützt neben der aktuellen Version des Protokolls alle Versionen, die bisher gültig waren. Verwendet der Client eine dieser Versionen, so erzeugt der Server einen Antwort-Payload in dieser Version. Andernfalls antwortet er mit einer Fehlermeldung, die die Protokollinkompatibilität mitteilt. Diese Meldung erzeugt der Server in seiner aktuellen Version des XML-Schnittstellenprotokolls.