Was gebaut ist
Eine Aktion ist das Zurückschreiben einer geprüften Handlung in die führende Quelle. Die Ontologie liest, die Aktion schreibt, und sie tut es über die Schnittstelle, die der Hersteller der Quelle dafür vorsieht. In den Bildern von SnapSite ist sie der Pfeil, der zurück in eine Quelle läuft.
Von der Handlung zur Aktion
Begriff · Schema
Ein versionierter Vertrag über Felder, Typen und erlaubte Werte. Die Prüfung muss unbekannte und ungültige Eingaben behandeln.
Eine Handlung ist ein Typ: Name, Parameter, Vorbedingungen, benötigtes Recht und Wirkung. Eine Aktion ist ihre Ausführung für ein Objekt mit bestimmten Parametern, nachdem Schema, Recht und Vorbedingung geprüft sind und, wo vorgesehen, eine Freigabe vorliegt. Erst die Aktion ändert etwas außerhalb des Systems.
Genau einmal
Eine Aktion trägt einen Idempotenzschlüssel, damit eine Wiederholung nach einem Netzfehler nicht doppelt wirkt. Die Absicht zu schreiben und die Änderung im eigenen Speicher werden in derselben Transaktion festgehalten; ein eigener Prozess ruft danach die Quelle auf. Wo die Quelle Wiederholungen nicht erkennt, wird erst ihr Zustand abgefragt, bevor wiederholt wird.
Über die Schnittstelle der Quelle
Die Aktion schreibt nie direkt in die Tabellen eines fremden Systems, sondern über einen Aufruf, den der Hersteller vorsieht, damit Prüfungen, Sperren und Folgebuchungen der Quelle greifen. Erledigt ist sie erst, wenn die Quelle bestätigt hat und die Änderung beim nächsten Lesen wieder auftaucht.
Ausgleich bei Teilfehlern
Berührt eine Aktion zwei Systeme, gibt es keine gemeinsame Transaktion. Sie zerfällt in Schritte mit je einem Gegenschritt, der ihre Wirkung fachlich aufhebt, eine Saga. Ein Gegenschritt ist eine neue Buchung, etwa eine Stornierung, und beide stehen im Verlauf.
Wovon sie sich unterscheidet
Eine Aktion ist kein Handlungstyp, sondern seine Ausführung. Sie ist keine Schaltfläche in einer Oberfläche, die dieselbe Aktion auslösen kann, und keine Freigabe, die nur erlaubt. Und sie ist nicht der Vorschlag eines Agenten: Der Vorschlag wird erst zur Aktion, wenn die Prüfung bestanden ist.
Grenze
- Grenze
- Die Aktion im Betrieb ist Bauweise. Gebaut ist der Prototyp von Freigabe und Protokoll, der das Ja zu einer Handlung bindet; Anbindung an Kundensysteme und Rückschreiben bestehen noch nicht.
Fragen
- Wer löst eine Aktion aus?
- Eine Person mit dem Recht dazu oder ein Agent im Auftrag einer Person, immer mit dem Recht der Person als Obergrenze.
- Was geschieht, wenn die Quelle die Änderung abweist?
- Sie gilt nicht. Die Meldung der Quelle geht unverändert an den Handelnden zurück und steht im Verlauf.
Quellen
- RFC 9110: HTTP SemanticsIETF. Bedingte Anfragen mit If-Match und Antwort 412 als Schutz gegen gleichzeitige Änderung.