Add an entity type
Learn more about the available entity types and how the metadata for an entity type defines that entity.
You can add entity type as part of overall L3 configuration. For more details, see topic Configuring Survivorship Rules in the L3 .
Entity type metadata
Property | Required | Description | Type |
---|---|---|---|
URI | Yes | Path that the software uses to reach the entity type. Format: configuration/entityTypes/{EntityTypeName} Example: configuration/entityTypes/Individual | String, URI |
id | Yes-for response JSON | Internal, system-generated ID. Used internally to get the difference between two versions of configurations when configuration is updated. | String |
label | Yes | Readable name of the entity type. Example: Individual | String |
description | No | Description for the entity type. | String |
extendsTypeURI | No | URI of an entity type that is extended by this entity type. Example: configuration/roles/Party | String, URI |
typeColor | No | Color that the software uses is used to visualize this entity type. For example, in Graph View, it’s the color of a node. Example: #00FF00 | String, hex color |
typeIcon | No | Icon used in UI facets when representing the entity type. | String, URL |
typeGraphIcon | No | Icon used in UI graphs when representing the entity type. | String, URL |
typeImage | No | Default profile image. | String, URL |
dataLabelPattern | No | Pattern that the software uses to build an entity object label. Can include static text, as well as patterns-attributes in curly brackets. You can use square brackets to define conditional label patterns. If an attribute used inside the set of brackets doesn’t exist, then all content inside the brackets are skipped. Note: If dataLabelPattern is not specified, label is used. Example: {FirstName} {MiddleName} {LastName}[, {Credentials}] | String |
secondaryLabelPattern | No | Pattern that the software uses to build an entity object secondary label. Can include static text, as well as patterns-attributes in curly brackets. Note: You can use comma-separated string built from business card attributes. In this case, use {businessCardAttributes} as a string value. Examples: {businessCardAttributes} OR {Address}. | |
dataTooltipPattern | No | Pattern that the software uses to build the tooltip for an entity object. Can include static text, as well as patterns-attributes in curly brackets. Note: If dataTooltipPattern is not specified, a label is used. Example: Tooltip: {configuration/entityTypes/Individual/attributes/FullName} | String |
entitySmartLogic | No | Identifies when the entity type has smart logic. Possible values: Person, Organization, Location. | String |
entityTypeRoleURIs | No | Array of URIs for a role that can be used in combination with this entity type. For example, an Individual entity object can be a client, while a Location object cannot be. For more details, see Entity Roles. Example: ["configuration/roles/Client", "configuration/roles/Advisor"] | Array of role URIs |
attributes | No | Attributes that are defined as standard for this entity type. Attributes can be of Simple, Nested and Reference type. For more details, see Attributes Configuration. Example: { "URI":"configuration/entityTypes/Individual/attributes/FirstName", "name": "FirstName", "id":"4", "label":"First Name", "type":"String"} | JSON object of Attributes Configuration |
defaultFacetedAttributes | No | Array of attributes that must be faceted for that entity. Example: "defaultFacetedAttributes": ["configuration/entityTypes/Plan/attributes/Type", "configuration/entityTypes/Plan/attributes/PaymentType"] | Array of attributes |
businessCardAttributeURIs | No | Attributes that are returned as search result items and displayed in the Profile band; that is, the top item on the Profile page with profile icon and label. There are three groups of attributes:
The business card attributes are an array of URIs for attributes that must be used in a business card. These attributes follow in the order of priority and the order is preserved. Example:
For details, see Attributes Configuration | Array of attributes URIs) |
imageAttributeURIs | No | Array of URIs for attributes that contains entity object images. The system considers the first array element as the default bucket for profiles. Example: ["configuration/entityTypes/Individual/attributes/ImageLinks"] For details, see Attributes Configuration. | Array of attributes URIs |
matchGroups | No | Array of match groups specification. For details, see Match Rule Configuration - Step by Step. | Array |
cleanse | No | Enables you to define a set of data cleanse rules based on an entity type by specifying:
| JSONArray |
cleanseInputObjectBeforeOverwrite | No | Enables (value is set to true) or disables (value is set to false) the cleanse function for a specific entity before the overwrite process. By default, the property is set to true and cleanse is performed. If the property is set to false, cleanse is skipped.
Sample entity request
Entity after it is updated
| Boolean |
dependentAttributes | No | Enables you to define set of attributes that depend on an entity attribute value(s).
| JSONArray |
lifecycleActions | No | Life Cycle Actions that must be executed for this entity lifecycle hook. Example: "lifecycleActions": { "beforeSave": [ "BeforeSaveAction"] } For details, see Life Cycle Actions (LCA) Service API | JSON object |
overrideIgnorePin | No | Determines if the "pin"/"ignore" flags must be overridden after updating an attribute by the same value. The default value is true. Example: "overrideIgnorePin": "false" | Boolean |
matchBeforeCreate | No | Enables or disables on-the-fly optimization to match entities before the create operation. If optimization is enabled and a match is found by auto-rule, the software merges the new entity on-the-fly with the existing one, instead of being created separately. The default value is false. Example (enable): "matchBeforeCreate": "true" | Boolean |
forceOvForUiUpdates | No | Determines whether or not updated entity attribute values in the UI are ignored. The default value is true, that is, the updated value is ignored and so is not the operational value (OV) anymore and is not included for OV calculation. The OV in this case is determined from the remaining values based on the configured survivorship strategies. If the value is set to false, the values updated in UI are not ignored, so the configured survivorship strategies determine the OV from all available attribute values. | Boolean |
useOnlyOvValuesInReferencedEntities | No |
Use this option to determine whether you must use non-OV values of all attributes of the current entity type when the entity is used as a reference attribute. The default value is false; however:
| Boolean |
ignoreNonOVChangesWhenUpdate ThroughReferencedEntity | No | Use this option to determine whether you must send an event indicating that the referenced entity was changed in the case when a non-OV value was updated on a current entity. The default value is false; however:
Note:
| Boolean |
skipValidationForAbstractType | No | Specifies when to exclude entity types from a validation. Sometimes validation errors can occur for abstract entity types that are not part of the implementation. To exclude such entity types from being checked during validation, you can use this parameter. When this parameter is set to true for an entity type, the validation rules are not applied if the entity type is abstract. This parameter takes one of the following values:
If the current entity type doesn’t have this parameter but extends another entity type that has this parameter, the current entity type does not inherit from the parent entity type. Example: The software takes skipValidationForAbstractType from the same entity type from the lower-level configuration. In L2, the GPO entity type contains skipValidationForAbstractType, so there are no validation errors at this level:
In L3, the same GPO does not contain skipValidationForAbstractType:
Result:
skipValidationForAbstractType cannot be inherited from the parent entity type. In L2, the GPO entity type contains skipValidationForAbstractType and therefore, there are no validation errors at this level:
In L3, the GPOExtended extendsconfiguration/entityTypes/GPO and does not contain skipValidationForAbstractType:
Result of Applying L3: Error Message:
| Boolean |