Skip to content

DataObject

Namespace: DataWarehouseAutomation.DwaModel
Assembly: DataWarehouseAutomation.dll

The definition of a data set, file, or table. The Data Object can be the ‘source’ or ‘target’ in a . A Data Object which acts as target in one mapping, can be a source in another mapping, building up the data logistics lineage.

public class DataObject : IMetadata, IDataObject

objectDataObject

IMetadata, IDataObject

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

The definition of the Business Key(s) for the Data Object. Being able to record the business key definition This serves multiple purposes, but one of them is to support defining a series of business key definitions against the source data object, and reuse these across different data object mappings. The order is stored as well, because in some cases the order of keys is meaningful.

[JsonPropertyName("businessKeyDefinitions")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public List<(int OrdinalPosition, BusinessKeyDefinition)>? BusinessKeyDefinitions { get; set; }

List<(int OrdinalPosition, BusinessKeyDefinition)>?

Free-form and optional classification for the Data Object.

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

List<DataClassification>?

The connection information associated to the Data Object.

[JsonPropertyName("dataConnection")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public DataConnection? DataConnection { get; set; }

DataConnection?

The collection of Data Items associated with this Data Object.

[JsonPropertyName("dataItems")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public List<IDataItem>? DataItems { get; set; }

List<IDataItem>?

The collection of extension Key/Value pairs.

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

List<Extension>?

An optional identifier for the Data Object.

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

string?

The mandatory name of the Data Object.

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

string

Free-format notes.

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

string?

Any relationship to other data objects.

[JsonPropertyName("relationships")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public List<(int OrdinalPosition, Relationship)>? Relationships { get; set; }

List<(int OrdinalPosition, Relationship)>?

Use this method to assert if two Data Objects are the same, based on their Ids.

public override bool Equals(object? obj)

obj object?

bool

True if the Data Objects are the same, based on their Ids

Override to get a hash value that represents the identifier.

public override int GetHashCode()

int

A 32-bit signed integer hash code

String override so that the object returns its value (‘name’). When an instance of this class is passed to a method that expects a string, the ToString() method will be called implicitly to convert the object to a string, and the value of the “Name” property will be returned.

public override string ToString()

string

The Name