This article looks at the basic mechanics of Entity Container Extensions in Oracle Policy Modeling. This is the latest in our series about JavaScript Extensions. Here are the links to the other chapters for reference:
Introduction to Label Extensions | Video : Label Extension Overview in Intelligent Advisor |
Introduction to Input Extensions | Video : Input Extensions for Interviews in Intelligent Advisor |
Introduction to Options Extensions | Video : Option Extensions for Interviews in Intelligent Advisor |
Introduction to Search Extensions | Video : Search Extension for Interviews in Intelligent Advisor |
Introduction to Container Extensions | Video : Container Extensions for Interviews in Intelligent Advisor |
So what is an Entity Container Extension. You will have guessed that it has much in common with the Container Extension we looked at last time, but unlike the Container, the Entity Container has a more entity data focus. Not a surprise given the name. But it means that the Interview Screen that will render the Extension will have an Entity Container placed on it (by you) and you will add whatever attributes you intend to display or manipulate in your Entity Container Extension. You are essentially building the logical view of what you are going to render in the Entity Container. It is probable that you will add Custom Properties to your control, perhaps to make it more reusable and to pass information from the design into the runtime.

What can you do with an Entity Container : you will also have access to the interview and the control objects in your code. If you are displaying the instances of the entity (which has been collected on another Screen, or inferred in a rule – remember that an Entity Container cannot add or delete row, only view or edit them) then you are likely to want to iterate through the instances and pull out the information you need. The Entity Container Extension has only mount, unmount and update keys so you will probably find yourself using some traditional JavaScript events like change to monitor whether the user is updating anything in your Entity Container Extension. The update key will help you refresh your extension if other interview contents have been modified.
For rapid creation it is likely also that you will not want to do all the UX work yourself. You can leverage classic libraries like jqGrid, jsGrid or GlideJS to render rows of data in fun and friendly ways. So you might find yourself concentrating on packaging the data in your extension, and then passing it to a library for presentation.

In the example above, the display of rows leverages the jsGrid controller capability so the user does not have to scroll through records, they can filter by score. Sorting and pagination are provided out of the box with these “JSON renderers” like jsGrid.
Your Entity Container Extension can add interactivity, ease of use and clarity to row-based data. Of course it can do something else, like draw a picture based on the entity instances. In any case, the instances are the primary reason why you are here, right?
Below you can find a brief presentation about the Entity Container Extension and the examples given. For a limited time the simple example mentioned is free of charge in the Online Store.

Have a great day, and don’t forget to subscribe to our channel for more Oracle Intelligent Advisor content!