LivingAPI

LivingAPI bezeichnet die Gesamtmenge an Objekten die einem Anzeige-Template, einem E-Mail-Template oder anderen Templates übergeben werden.

(Im Gegensatz dazu wird vSQL verwendet, um Datensätze zu filtern oder auszuwählen, bevor sie an Templates übergeben werden.)

Von welchen Apps Daten über die LivingAPI an ein Anzeige-, Formular-, Update- oder E-Mail-Template übergeben werden, kann unter Konfiguration ‣ Erweitert in der Anzeige-Templates-Maske beim jeweiligen Anzeige-Template unter der Datenquellen-Maske konfiguriert werden (sowie über bestimmte Abfrage-Parameter im HTTP-Request beeinflußt werden). Für E-Mail-Templates passiert dies in der E-Mail-Templates-Maske beim jeweiligen E-Mail-Template unter der Datenquellen-Maske.

Objekt-Typen

Die folgende Objekt-Typen stellen die zentralen Objekte in der LivingAPI dar: Apps (App) mit ihren Feldern (Control) oder Dekorationsfeldern (LayoutControl) sowie Datensätze (Record) mit den Feld-Werten (Field), Anhängen zu den Datensätzen (Attachment) und untergeordnetet Datensätze (RecordChildren) sowie Auswahl-Objekte (LookupItem), Objekte für hochgeladene Dateien (File) und für geographische Koordinaten (Geo).

digraph LivingAPI_1 {
graph [ bgcolor="transparent"];
node [ pad=0.1 shape="box" style="rounded" fillcolor="ghostwhite" ];
App -> Record [ dir="both" arrowtail="normal" arrowhead="dot" ];
App -> Control [ dir="both" arrowtail="normal" arrowhead="dot" ];
App -> LayoutControl [ dir="both" arrowtail="normal" arrowhead="dot" ];
Record -> Field [ dir="both" arrowtail="normal" arrowhead="dot" ];
Record -> Attachment [ dir="both" arrowhead="dot" arrowtail="normal" ];
Record -> RecordChildren [ dir="both" arrowhead="dot" arrowtail="normal" ];
RecordChildren -> Record  [ dir="both" arrowhead="none" arrowtail="normal" ];
Control -> RecordChildren [ dir="both" arrowhead="dot" arrowtail="none" ];
Field -> Control [ arrowtail="normal" weight=3 ];
Control -> LookupItem [ dir="both" arrowtail="normal" arrowhead="dot" style="dotted" ];
Field -> LookupItem [ dir="both" arrowhead="normal" arrowtail="none" style="dotted" ];
Field -> LookupItem [ dir="both" arrowhead="dot" arrowtail="none" style="dotted" ];
Field -> Record [ dir="both" arrowhead="normal" arrowtail="none" style="dotted" ];
Field -> Record [ dir="both" arrowhead="dot" arrowtail="none" style="dotted" ];
Field -> Geo [ arrowhead="normal" ];
Field -> File [ arrowhead="normal" ];
LayoutControl -> File [ arrowhead="normal" ];

subgraph {
   rank = same; Record; Control; LayoutControl;
}

subgraph {
   rank = same; Attachment; Field;
}

subgraph {
   rank = same; Geo; LookupItem; File;
}
}

Die zentralen Objekt-Typen der LivingAPI

Weiterhin werden einem Anzeige-Template im Globals-Objekt globale Informationen übergeben. Darüber hat der Benutzer die Möglichkeit auf Informationen über die zu verarbeitende HTTP-Anfrage zuzugreifen (HTTPRequest), die zu versendende HTTP-Anwort zu beeinflußen (HTTPResponse), und einige Dinge mehr.

Bei einem E-Mail-Template werden ebenfalls im Globals-Objekt globale Informationen übergeben. Das EmailRequest-Objekt enhält Informationen über den Kontext in dem die E-Mail-Versendung stattfindet. Das EmailResponse-Objekt kann dazu verwendet werden, Betreff und Adressaten der Email zu ändern.

digraph LivingAPI_2 {
graph [ bgcolor="transparent" ];
node [ pad=0.1 shape="box" style="rounded" fillcolor="ghostwhite" ];
Globals -> FlashMessage [ dir="both" arrowhead="dot" arrowtail="none" ];
Globals -> HTTPRequest [ arrowtail="normal" ];
Globals -> HTTPResponse [ arrowtail="normal" ];
Globals -> EmailRequest [ arrowtail="normal" ];
Globals -> EmailResponse [ arrowtail="normal" ];
App -> Globals [ arrowtail="normal" weight=2];
App -> DataSource [ dir="both" arrowhead="none" arrowtail="dot" ];
App -> DataSource [ dir="both" arrowhead="none" arrowtail="normal" ];
DataSource -> DataSourceChildren [ dir="both" arrowhead="dot" arrowtail="normal" ];
Globals -> DataSource [ dir="both" arrowhead="dot" arrowtail="normal" ];

subgraph {
   rank = same; Globals; DataSource;
}
}

Globale Informationen

Dem App-Objekt sind weiterhin einige Informationen zugeordnet: Die App-Kategorien (Category), die App-Parameter (AppParameter), die Menüs (MenuItem), die Panels/Kacheln (Panel), die Installation, die diese App erzeugt hat (Installation) sowie die Ansichten (View).

digraph LivingAPI_3 {
graph [ bgcolor="transparent" ];
node [ pad=0.1 shape="box" style="rounded" fillcolor="ghostwhite" ];
App -> Category [ dir="both" arrowhead="dot" arrowtail="dot" ];
App -> AppParameter [ dir="both" arrowhead="dot" arrowtail="normal" ];
App -> MenuItem [ dir="both" arrowhead="dot" arrowtail="normal" ];
App -> Panel [ dir="both" arrowhead="dot" arrowtail="normal" ];
App -> Installation [ arrowtail="normal" ];
Category -> Category [ dir="both" arrowhead="dot" arrowtail="normal" ];
App -> View [ dir="both" arrowhead="dot" arrowtail="normal" ];
View -> ViewControl [ dir="both" arrowhead="dot" arrowtail="normal" ];
ViewControl -> ViewLookupItem [ arrowhead="dot" style="dotted" ];
}

Zusätzliche Information zu Apps

Die einzelnen Objekt-Typen werden in den folgenden Unter-Kapiteln beschrieben:

Sonstiges