Create and edit schemas in the UI

This guide provides an overview of how to create, edit, and manage Experience Data Model (XDM) schemas for your organization in the Adobe Experience Platform UI.


XDM schemas are extremely customizable, and therefore the steps involved in creating a schema can vary depending on what kind of data you want the schema to capture. As a result, this document only covers the basic interactions you can make with schemas in the UI, and excludes related steps such as customizing classes, schema field groups, data types, and fields.

For a full tour of the schema creation process, follow along with the schema creation tutorial to create a complete example schema and familiarize yourself with the many capabilities of the Schema Editor.


This guide requires a working understanding of XDM System. Refer to the XDM overview for an introduction to the role of XDM within the Experience Platform ecosystem, and the basics of schema composition for an overview of how schemas are constructed.

Create a new schema

In the Schemas workspace, select Create schema in the top-right corner. In the dropdown that appears, you can choose between XDM Individual Profile and XDM ExperienceEvent as the base class for the schema. Alternatively, you can select Browse to select from the full list of available classes, or create a new custom class instead.

Once you select a class, the Schema Editor appears and the schema’s base structure (provided by the class) is shown in the canvas. From here, you can use the right rail to add a Display name and Description for the schema.

You can now start building the structure of the schema by adding schema field groups.

Edit an existing schema


Once a schema has been saved and used in data ingestion, only additive changes can be made to it. See the rules of schema evolution for more information.

To edit an existing schema, select the Browse tab, and then select the name of the schema you want to edit.


You can use the workspace’s search and filtering capabilities to help find the schema easier. See the guide on exploring XDM resources for more information.

Once you select a schema, the Schema Editor appears with the schema’s structure shown in the canvas. You can now add field groups to the schema, edit field display names, or edit existing custom field groups if the schema employs any.

Add field groups to a schema


This section covers how to add existing field groups to a schema. If you want to create a new custom field group, see the guide on creating and editing field groups instead.

Once you have opened a schema within the Schema Editor, you can add fields to the schema through the use of field groups. To start, select Add next to to Field groups in the left rail.

A dialog appears, showing a list of field groups that you can select for the schema. Since field groups are only compatible with one class, only those field groups that are associated with the schema’s selected class will be listed. By default, listed field groups are sorted based on their usage popularity within your organization.

If you know the general activity or business area of the fields you want to add, select one or more of the industry vertical categories in the left rail to filter the displayed list of field groups.


For more information on best practices for industry-specific data modeling in XDM, see the documentation on industry data models.

You can also use the search bar to help locate your desired field group. Field groups whose name matches the query appear at the top of the list. Under Standard Fields, field groups containing fields that describe desired data attributes are displayed.

Select the checkbox next to the name of the field group that you wish to add to the schema. You can select multiple field groups from the list, with each selected field group appearing in the right rail.


For any listed field group, you can hover or focus on the information icon () to view a brief description of the kind of data the field group captures. You can also select the preview icon () to view the structure of the fields that the field group provides before you decide to add it to the schema.

Once you have chosen your field groups, select Add field groups to add them to the schema.

The Schema Editor reappears with the field-group-provided fields represented in the canvas.

Enable a schema for Real-time Customer Profile

Real-time Customer Profile merges data from disparate sources to construct a complete view of each individual customer. If you want the data captured by a schema to participate in this process, you must enable the schema for use in Profile.


In order to enable a schema for Profile, it must have a primary identity field defined. See the guide on defining identity fields for more information.

To enable the schema, start by selecting the schema’s name in the left rail, then select the Profile toggle in the right rail.

A popover appears, warning you that once a schema has been enabled and saved, it cannot be disabled. Select Enable to continue.

The canvas reappears with the Profile toggle enabled.


Since the schema is not saved yet, this is the point of no return if you change your mind about letting the schema participate in Real-time Customer Profile: once you save an enabled schema, it can no longer be disabled. Select the Profile toggle again to disable the schema.

To finish the process, select Save to save the schema.

The schema is now enabled for use in Real-time Customer Profile. When Platform ingests data into datasets based on this schema, that data will be incorporated into your amalgamated Profile data.

Edit display names for schema fields

Once you have assigned a class and added field groups to a schema, you can edit the display names of any of the schema’s fields, regardless of whether those fields have been provided by standard or custom XDM resources.


Keep in mind that the display names of fields that belong to standard classes or field groups can only be edited in the context of a specific schema. In other words, changing the display name of a standard field in one schema does not effect other schemas that employ the same associated class or field group.

Once you make changes the display names for a schema’s fields, those changes are immediately reflected in any existing datasets based on that schema.

To edit the display name of a schema field, select the field in the canvas. In the right rail, provide the new name under Display name.

Select Apply in the right rail, and the canvas updates to show the field’s new display name. Select Save to apply the changes to the schema.

Change a schema’s class

You can change the class of a schema at any point during the initial composition process before the schema has been saved.


Reassigning the class for a schema should be done with extreme caution. Field groups are only compatible with certain classes, and therefore changing the class will reset the canvas and any fields you have added.

To reassign a class, select Assign in the left-hand side of the canvas.

A dialog appears that displays a list of all available classes, including any defined by your organization (the owner being “Customer”) as well as standard classes defined by Adobe.

Select a class from the list to display its description on the right-hand side of the dialog. You can also select Preview class structure to see the fields and metadata associated with the class. Select Assign class to continue.

A new dialog opens, asking you to confirm that you wish to assign a new class. Select Assign to confirm.

After confirming the class change, the canvas will be reset and all composition progress will be lost.

Next steps

This document covered the basics of creating and editing schemas in the Platform UI. It is strongly recommended that you review the schema creation tutorial for a comprehensive workflow for building a complete schema in the UI, including creating custom field groups and data types for unique use cases.

For more information on the capabilities of the Schemas workspace, see the Schemas workspace overview.

To learn how to manage schemas in the Schema Registry API, see the schemas endpoint guide.

On this page