Logical & Physical Data Models: REST Wizard artefacts: App Studio vs Dev Studio [LSA Data Excellence]
How is the REST wizard in App Studio different to the one in Dev Studio we've used forever?
REST Connector wizards in Dev Studio:
Continue to create the *-Int-* class model to reflect the JSON message structure for the request and response for the REST API being created;
Require an instance of a Request class from the *-Int-* class model be created on the clipboard before invoking the Connector call;
Map the JSON response from the Connector call to the clipboard as an instance of the Response class from the *-Int-* class model, before it is known how much of that response will be used by the application;
Provide the option to create a *-Data-* class model in a separate Ruleset, but which ultimately only reflects the same properties in the same structure as the *-Int-* class model.
REST Connector wizards in App Studio (8.4) however:
Do not create an *-Int-* class model to reflect the JSON message structure for the request and response of the REST API. An *-Int-* class is created, but only to hold the Connect-REST rule, there is no data model.
Prompt the Citizen Developer to visually map the attributes needed from the JSON message to the Data Object (the *-Data-* class in the Logical Data Model).
The visual mappings specified by the Citizen Developer are recorded as a JSON Data Transform rule, that is referenced by the Response Data Transform of the Data object's Data Page.
Data in the JSON response not required by the Logical Data Model is never mapped to the clipboard. This improve the performance of the Connector integration.
The one JSON Data Transform rule can be used bi-directionally. It configures a relationship between the Logical Data Model and a JSON message, which can both "serialize" from Clipboard to JSON as well as "deserialize" from JSON to Clipboard.