The metadata and data models in Microsoft Dynamics 365


Applies To: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Microsoft Dynamics 365 and Microsoft Dynamics 365 (online) uses a metadata driven architecture to provide the flexibility to create custom entities and additional system entity attributes. This structure also makes upgrades and the transportation of customizations easier. The data structure can change without requiring any change to code in the Microsoft Dynamics 365 server or client applications.

All the information necessary for Microsoft Dynamics 365 server to operate is stored in the Microsoft Dynamics 365 metadata. This includes information about entities, attributes, relationships, and option sets.

The Microsoft Dynamics 365 Web services contain the messages that you use to read or write the definitions for all the entities each organization. It can also be used to build a client-side metadata cache, which is useful for applications that access the metadata frequently. For example, you may want to create a custom search solution that supports all entities, even those created after the solution has been installed.

A very important role of the metadata is to provide the framework to deliver a fully metadata driven user interface. The entity metadata controls the grid and form layout, and how navigation options are presented.

When you create a custom entity, the information in the attributes and relationships are used to create the appropriate user interface for that entity. In addition, this supports multiple languages in the user interface so that one user may see labels and other text in a different language from another user. These languages and the associated labels are stored in the metadata. The language edition of Microsoft Dynamics 365 server that is installed for an organization is considered its base language. You then install Multilingual User Interface (MUI) language packs for additional languages as they are needed.

To read more about metadata and how to find metadata reports, see Entity metadata.

The following table lists the objects described by the metadata.

Metadata object



An entity is a container for data, similar to a table in a traditional database. Each entity contains a set of attributes. For Microsoft Dynamics 365, there are a set of entities that exist when you first install. Some of these are customizable. In addition, you can create custom entities to contain business data.


An attribute is a container for a piece of data in an entity. Microsoft Dynamics 365 supports a wide variety of attribute types.


A relationship defines an association between two entities: one-to-many, many-to-one, many-to-many, and self-referential.

Option Set

An option set defines a set of options provided for a picklist. Several picklist attributes may use a global option set so that the options they provide are always the same and can be maintained in one location.


An option is one of the values available in an option set. Each option in an option set has a unique integer value and an associated set of localized labels.

See Also

Extend Microsoft Dynamics 365
Supported extensions for Microsoft Dynamics 365
Browse the metadata for your organization
Use the Web API with Dynamics 365 metadata
Use the Organization service with Dynamics 365 metadata
Extend Microsoft Dynamics 365 on the server
Extend Microsoft Dynamics 365 on the client
Customize Microsoft Dynamics 365 applications
Package and distribute extensions using solutions
Developers guide to reports for Microsoft Dynamics 365
Extend Microsoft Dynamics 365 for Outlook
Integrate Microsoft Dynamics 365 with SharePoint
Integrate Microsoft Dynamics 365 with OneNote

Microsoft Dynamics 365

© 2016 Microsoft. All rights reserved. Copyright