Requirements for Dependent Layouts

To ensure that your dependent layouts function without error, Oracle Visual Builder Add-in for Excel requires that the REST service complies with the requirements set out here.

URL Path Requirements

To ensure all operations of dependent layouts can be done without errors, the add-in requires the following:

  • Parent business object:
    • Collection path: /{parentResource}
    • Item path: /{parentResource}/{parentResource_Id}
  • Child business object
    • Collection path: /{parentResource}/{parentResource_Id}/{childResource}
    • Item path: /{parentResource}/{parentResource_Id}/{childResource}/{childResource_Id}
  • Grandchild business object
    • Collection path: /{parentResource}/{parentResource_Id}/{childResource}/{childResource_Id}/{grandchildResource}
    • Item path: /{parentResource}/{parentResource_Id}/{childResource}/{childResource_Id}/{grandchildResource}/{grandchildResource_Id}

This example shows the collection and item paths for the parent, child, and grandchild business objects in the following three-level hierarchy:


Three-level business object hierarchy, showing PurchaseOrders as the parent, lines as the child, and schedules as the grandchild

Parent paths:

  • Collection path: /PurchaseOrders
  • Item path: /PurchaseOrders/{PurchaseOrders_Id}

Child paths:

  • Collection path: /PurchaseOrders/{PurchaseOrders_Id}/lines
  • Item path: /PurchaseOrders/{PurchaseOrders_Id}/lines/{lines_Id}

Grandchild paths:

  • Collection path: /PurchaseOrders/{PurchaseOrders_Id}/lines/{lines_Id}/schedules
  • Item path: /PurchaseOrders/{PurchaseOrders_Id}/lines/{lines_Id}/schedules/{schedules_Id}

GET and POST Response Requirements

GET and POST responses when requesting on collection paths must contain self links. The self link must be inside each item in an "items" array and must uniquely identify a record.

Here is an example of a GET response when the request URL is http://localhost:8888/ords/hr_rest/ExpenseReports:

{
  "items": [
    {
      "ExpenseReportId": 15001,
      "links": [
          { "rel": "self",
            "href": "http://localhost:8888/ords/hr_rest/ExpenseReports/15001"
          }
      ]
    },
    {
      "ExpenseReportId": 15002,
      "links": [
          { "rel": "self",
            "href": "http://localhost:8888/ords/hr_rest/ExpenseReports/15002"
          }
      ]
    },
  ]
  ......
}

Notes on Oracle REST Data Services Support