REST sources are usually not as clearly structured as relational
databases. Some provide a schema, but generally they do not. REST sources can conform to
a relational database schema when Corticon uses the Progress® DataDirect® Autonomous
Rest Connector to access REST sources. The REST connector maps the JSON in a REST source
to a relational database schema, and then translates SQL statements to REST API
requests. These steps in Corticon Studio populate a new Vocabulary from the REST
Datasource used in the REST connectivity sample from the Data Integration guide. The
REST source has no schema; its data looks this:
To generate a Vocabulary from a REST data source:
In Corticon Studio, create a new Rule Project named GenRates.
In the new project, create a Vocabulary named GenRates.
Open the Vocabulary in its editor, and then select Vocabulary > Add Datasource > Add REST Datasource.
Define the Datasource connection for the URL https://bj36i9ki66.execute-api.us-east-2.amazonaws.com/prod/ReimbursementRate?procedureCode=B5120ZZ
as shown, and then click CONNECTION Test:
Click SCHEMA Discover. If your REST source
has a schema, or is one that you exported in an earlier processing of this source you
could import it now. For this source, you need to let the Progress® DataDirect®
Autonomous Rest Connector map the JSON in the REST source to a relational database
schema, and then translate SQL statements to REST API requests.
Select Vocabulary > Populate Vocabulary From
Datasource
Choose the REST Service Datasource. If there
were several Datasources defined, choose them one at a time for this process. In this
example, there is only one, REST Service. Click Next.
A wizard opens to let you review the Datasource prior to creating the
Vocabulary elements, where you can select the Tables and Columns to create as
Entities and Attributes. Here, the tree was expanded for REST_DATA, the primary table that was unnamed so it was given this
default name. You can see links between tables to all the other tables at the bottom
of the table.
Click Finish. The Vocabulary is generated, as shown:
The Primary Key in RATES is POSITION, a standard that REST connector uses to ensure
keys are unique, plus the REST_DATA_PROCEDURECODE,
the default name of the primary entity. The Primary Key in the REST_DATA entity is the single primary key, PROCEDURECODE