The metadata and data models in Microsoft Dynamics CRM 2013


Applies To: Dynamics CRM 2013

Microsoft Dynamics CRM 2013 and Microsoft Dynamics CRM 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 CRM server or client applications.

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

The Microsoft Dynamics CRM 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 CRM 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 CRM, 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 CRM 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

Developer overview
The programming models for Microsoft Dynamics CRM 2013
What is Microsoft Dynamics CRM 2013
Extend the metadata model
Customize entity metadata