Developing Models for the Metadata Store
The code name “Oslo” repository database is an enterprise storage location for model metadata and model instances. Before adding models to the “Oslo” repository, it is important to understand the resources and tools available for creating models.
The “Oslo” repository database provides an open data model for any data access technology. With proper security permissions, a user or application can directly add models to the “Oslo” repository database. Although there are no enforced restrictions, modelers that directly add data to the “Oslo” repository should first understand the “Oslo” repository design patterns. These patterns allow user-created models to leverage built-in “Oslo” repository services. Following these design patterns also provides consistency and organization in the “Oslo” repository. adding models to the “Oslo” repository directly, see SQL Server Guidelines for Modeling in the "Oslo" Repository.
Model developers should also consider available tools for adding their models to the “Oslo” repository more efficiently. For example, the code name “Oslo” SDK installs support for a new modeling language named Microsoft code name “M”. The “M” compiler, M.exe, compiles source files into an image file. The “M” utility, Mx.exe, loads the image files into the “Oslo” repository. The “M” compiler and loader help to create the data models in a way that follows many of the “Oslo” repository design patterns. This allows the model developers to focus on the model itself rather than the details of how to add the models to the database in the correct format. For more information about using “M”, see Getting Started in "M". For more information about the “M” tools, M.exe and Mx.exe, see "M" Tools.
A model developer could choose to develop only custom models, but there are many built-in “Oslo” repository model schemas that come with the “Oslo” repository. At times, it might not be necessary to create a custom model. Instead, instances of “Oslo” repository models can be created and connected together in a way that meets a user’s requirements. In other scenarios, it might be desirable to create custom models that use the built-in “Oslo” repository models. This leverages the built-in models while defining additional schemas and entities specific to a custom problem domain.