Metadaten
Der REST-Dienst ist weitgehend über Metadaten beschrieben. Diese geben Auskunft über die vorhandenen Entitäten, Methoden, Felder etc. Dies betrifft auch sämtliche kundenspezifische Anpassungen.
Master-Katalog
Der Katalog der vorhandenen Objekte kann über folgenden Aufruf gelesen werden:
objectType | Schicht | Beschreibung |
---|---|---|
entity | BL | Entitäten (~Tabellen) mit deren Methoden |
query | BL | Abfrage, View |
detail | PL | Aufbau einer Detail-Ansicht eines Datensatzes |
list | PL | Aufbau einer Listenansicht von Objekten einer Entität |
menu | PL | Menü-Struktur |
search | Pl | Aufbau einer Suchmaske zu einer Entität |
Hinweis: Die Objekte der View-Schicht (PL) sind nur relevant, wenn UI-Elemente anhand der Modellinformationen aufgebaut werden sollen.
Businesslogik-Objekte, BL
Die Meta-Daten der Entitäten, also Feldnamen und Feldtypen, sowie die vorhandenen Methoden lassen sich über die folgende URI abfragen:
Dasselbe gilt für Views und Methoden, wobei hier Informationen über Aufrufparameter und Rückgabewerte zurückgegeben werden:
- ../rest2/{View}/model
- ../rest2/method/{method-name}/model
- ../rest2/{Klasse}/method/{method-name}/model
Das Format der Metadaten wird analog zu den Nutzdaten von Client angefordert.
Die Metadaten werden so weit als möglich nach Draft 04 von json-schema.org aufgebaut, eine Norm existiert zurzeit noch nicht.
Navigation
Die Verknüpfung der Daten wird mit dem Schlüsselwort links angegeben. Im obigen Beispiel wird bei der AbladevorschriftID damit angezeigt, dass die Referenz aus der Entität Abladevorschrift stammt (Schlüsselwort resource), die normal über die CRUD-Operationen manipuliert werden kann.
Die Kardinalität (Schlüsselwort cardinality) sagt aus, wer in der Beziehung Master und wer Fremdschlüssel ist: 1 = Fremdschlüssel, 2147483647 = Master, kommt in der Regel nur bei der ID vor.
Mit diesen Informationen ist es möglich durch das gesamte Datenmodell zu navigieren. Gute Startpunkte sind die Entitäten Adresse und Artikel.