Skip to content

BusinessKeyDefinition

Namespace: DataWarehouseAutomation.DwaModel
Assembly: DataWarehouseAutomation.dll

A business key definition is a special object that is defined as an optional property of a data object mapping. In other words, the business key definition can be a part of describing the relationship between a source data object and a target data object.

public class BusinessKeyDefinition

objectBusinessKeyDefinition

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.MemberwiseClone(), object.ReferenceEquals(object?, object?), object.ToString()

Items that define the Business Key e.g. the collection of columns for a business key. The integer value defines the order of the components in the business key definition. The order is significant, and is recorded as part of the tuple definition.

[JsonPropertyName("businessKeyComponents")]
public List<(int OrdinalPosition, IDataItem DataItem)>? BusinessKeyComponents { get; set; }

List<(int OrdinalPosition, IDataItem DataItem)>?

Free-form and optional classification for the business key for use in generation logic (evaluation).

[JsonPropertyName("classifications")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public List<DataClassification>? Classifications { get; set; }

List<DataClassification>?

The collection of extension key/value pairs.

[JsonPropertyName("extensions")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public List<Extension>? Extensions { get; set; }

List<Extension>?

Optional identifier as a string value to allow various identifier approaches.

[JsonPropertyName("id")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string? Id { get; set; }

string?

The optional name of the business key definition.

[JsonPropertyName("name")]
public string? Name { get; set; }

string?

Free-format notes.

[JsonPropertyName("notes")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string? Notes { get; set; }

string?

An optional label for the end result e.g. the target business key attribute.

[JsonPropertyName("surrogateKey")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string? SurrogateKey { get; set; }

string?