Heard it already? Yes, it’s one of the most important aspects of OA Framework that mostly remains invisible for the engineers working on OAF. So let’s dig into it and try to find out more about the MDS.
MDS stands for Meta Data Services and it is the declarative metadata repository used with OA Framework applications. Yes, I know that was a hard jargon ;). To be simple MDS is just an oracle database. As it’s an oracle database it can be managed using standard database procedures and tools.
It is essentially a database, which comes pre-seeded with schemas to support Oracle e-business Suite. These stored schemas are used by OA Framework to determine the layout of the OA framework pages.
To maintain the HTML rendering property of an OAF page the OA Framework makes the use of UI XML. The UI XML is used to describe the hierarchy of the components and also the components themselves on an OA Framework page. It’s all the power of UIX that allows metadata to be translated to an HTML page for a web browser or mobile device browser.
The whole OA Framework page is stored in the form of XML files in the exact format as defined by the MDS. Whenever a personalization is created through the OA Personalization Framework that personalization is added on top of the base product Meta data. Hence, the newly created personalization just sits on top of the base product UI and also on the base personalization, therefore the base personalization are not affected during patch application or while doing upgrades.
JDR_UTILS PL/SQL package supports the MDS repository and can be used to query and maintain the repository.
Now let’s see how, all that is mentioned above, happens.
MDS repository has 4 tables in all. Just 4 tables? Yes you heard it right it has only 4 tables and that’s it. These 4 tables can manage all the stuff that we have discussed till now.
These 4 tables are:
1. JDR_PATHS: Stores the path of the documents, OA Framework pages and their parent child relationship.
2. JDR_COMPONENTS: Stores components on documents and OA Framework pages.
3. JDR_ATTRIBUTES: Stores attributes of components on documents and OA Framework pages.
4. JDR_ATTRIBUTES_TRANS: Stores translated attribute values of document components or OA framework pages.
For your understanding I request you to please query these tables to find out how an OA Framework page is stored in MDS. It’s really fun to learn how a whole page along with all the information is just handled in only 4 tables. Just query them.
Thank you for your support.
Till the next post