Create and edit classes in the UI ui-create-and-edit

In Adobe Experience Platform, a schema’s class defines the behavioral aspects of the data that the schema will contain (record or time-series). In addition to this, classes describe the smallest number of common properties that all schemas based on that class would need to include and provide a way for multiple compatible datasets to be merged.

Adobe provides several standard (“core”) Experience Data Model (XDM) classes, including XDM Individual Profile and XDM ExperienceEvent. In addition to these core classes, you can also create your own custom classes to describe more specific use cases for your organization.

This document provides an overview of how to create, edit, and manage custom classes in the Experience Platform UI.

Prerequisites

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 to learn how classes contribute to XDM schemas.

While not required for this guide, it is recommended that you also follow the tutorial on composing a schema in the UI to familiarize yourself with the various capabilities of the Schema Editor.

Getting started

In the Platform UI, select Schemas in the left navigation to open the Schemas workspace, then select the Classes tab. A list of available classes are displayed.

Filter classes filter

The list of classes are automatically filtered based on how they were created. The default setting displays the classes defined by Adobe. You can also filter the list to show those created by your organization. Select the radio button to choose between the Standard and Custom options. The Standard option shows entities created by Adobe and the Custom option displays entities created within your organization.

The Classes tab of the Schemas workspace with Standard and Custom highlighted.

TIP
Use the search capabilities to filter or find a class based on its name. See the guide on exploring XDM resources for more information.

Create a new class create

There are two methods to create a class in the Platform UI. From any tab in the Schemas workspace, select Create schema, or from the Classes tab select Create class.

The Classes tab of the Schemas workspace with Create schema and Create class highlighted

If you select Create class, the Create class dialog appears. Enter a Display name and Description for your class and choose the intended behavior of your class with the radio buttons. Classes can be of the type, record series, or time series. Select Create to confirm your choices and return to the Classes tab.

The Create class dialog with Create highlighted.

The class you have created is available and listed in the Classes view.

The Classes tab of the Schemas workspace with the recently created class highlighted.

Create or edit a class create-or-edit

Alternatively, if you select Create schema, the Create schema workflow appears. In the Schema details section, select Other. A list of available classes appears. From here you can browse and filter pre-existing classes on which to base your new class.

NOTE
Only custom classes defined by your organization can be fully edited and customized. For core classes defined by Adobe, only the display names for their fields can be edited within the context of individual schemas. See the section on editing display names for schema fields for details.
Once a custom class has been saved and used in data ingestion, only additive changes can be made to it thereafter. See the rules of schema evolution for more information.

The Create schema workflow with Other highlighted in the Schema details section.

Select a radio button to filter the classes based on whether they are custom or standard classes. You can also filter the available results based on their industry, or search for a specific class using the search field.

The Create schema workflow with the search bar, Custom, and Industries highlighted.

To help you decide on the appropriate class, there are info ( An info icon. ) and preview ( An preview icon. ) icons for each class. The info icon opens a dialog that provides a description of the class and the industry that it is associated with. The preview icon opens a preview dialog for the class that contains a schema diagram and its properties.

A preview of the selected class with the schema diagram and class properties highlighted.

Select any row to choose a class, then select Next to confirm your choice.

The Create schema workflow with a class selected from the table of available classes and Next highlighted.

The Name and review section of the workflow appears. In this section, provide a name and description to identify your schema. ​The schema’s base structure (provided by the class) is shown in the canvas for you to review and verify your selected class and schema structure.

Enter a short, descriptive, unique, and user-friendly name for the class in the Schema display name text field. Next, enter a suitable description to identify the behavior of the data that the schema defines. When you have reviewed your schema structure and are happy with your settings, select Finish to create your schema.

The Name and review section of the Create schema workflow with the Schema display name, Description, and Finish highlighted.

The Schema Editor appears, with the schema’s structure shown in the canvas. You can now start adding fields to the class.

The Schema Editor with the schema's structure shown in the canvas.

Add fields to a class add-fields

Once you have a schema that employs a custom class open in the Schema Editor, you can start adding fields to the class. To add a new field, select the plus (+) icon next to the schema’s name.

IMPORTANT
When building a schema that implements a class defined by your organization, remember that schema field groups are available for use only with compatible classes. Since the class you defined is new, there are no compatible field groups listed in the Add field group dialog. Instead, you will need to create new field groups for use with that class. The next time you compose a schema that implements the new class, the field groups that you defined will be listed and available for use.

The Schema Editor with the add button highlighted.

IMPORTANT
Keep in mind that any fields you add to a class will be used in all schemas that employ that class. You should therefore carefully consider which fields will be useful in all schema use cases. If you are thinking of adding a field that may only see use in some schemas under this class, you may want to consider adding it to those schemas by creating a field group instead.

An Untitled Field placeholder appears in in the canvas, and the right rail updates to show controls to configure the field’s properties. Under Assign to, select Class.

An untitled field in the canvas of the schema editor with the Assign to Class field property selected and highlighted.

See the guide on defining fields in the UI for specific steps on how to configure and add the field to the class. Continue to add as many fields as required to the class. When finished, select Save to save both the schema and the class.

The newly created schema on the canvas of the Schema Editor, with Save highlighted.

If you have previously created schemas that employ this class, the newly added fields will automatically appear in those schemas.

Change the class of a schema schema

You can change the class of the schema at any point during the initial creation process before it has been saved. This should be done with caution however, as field groups are only compatible with certain classes. Changing the class resets the canvas and any fields you have added.
See the guide on creating and editing schemas for more information.

Next steps

This document covered how to create and edit classes using the Platform UI. For more information on the capabilities of the Schemas workspace, see the Schemas workspace overview.

To learn how to manage classes using the Schema Registry API, see the classes endpoint guide.

recommendation-more-help
62e9ffd9-1c74-4cef-8f47-0d00af32fc07