Documentation Index

Fetch the complete documentation index at: https://knowledge.curiositysoftware.ie/llms.txt

Use this file to discover all available pages before exploring further.

Soft Keys

Prev Next

Soft keys are foreign key relationships between tables that only exist within Curiosity’s Enterprise Test Data. Adding a soft primary key will not be enforced on the underlying DBMS but they simply allow you to define and document table relationships at the catalog level, independently of the database schema.

Viewing & Editing Relationships

  • Navigate to Data Dictionary

  • Select the Definition Structure tab and choose your definition

  • Each table displays relationship tags indicating Parent and Child associations

  • Click on a table to open the Table Details pane

  • From here you can add Parent or Child soft foreign keys

Adding a Soft Foreign Key

From the Table Details pane:

  • Click the green Child or Parent button next to the relevant table, or use the buttons in the Foreign Keys section of the Table Details pane

  • Give the relationship a name, select the related table, and use Add Column Reference to map the local and referenced columns

  • Click OK

Adding soft foreign keys is particularly valuable here, even where metadata harvesting identifies relationships automatically, explicitly defining them reinforces data lineage and makes relationships easier to validate and understand across your definition.

Marking a Column as a Soft Primary Key

1. Navigate to Data Dictionary

2. Select your Definition and open your Table from the dropdown

3. Click the Edit button to the right of the column name you want to flag

4. Expand the Advanced section

5. Toggle "Is Soft PK?" to enable it

As with soft foreign keys, marking a column as a soft primary key helps document the intended structure of your data - useful for validation activities and for anyone navigating relationships within the platform.

Deleting a Soft Key

1. Navigate to Data Dictionary → Definition Structure and select your definition

2. In the Content section, select the table where the soft key exists

3. In the Table Details pane, the Soft Key column indicates:

o ✅ Tick - soft key relationship

o ❌ Cross - hard (DBMS-level) key

4. Click the red X to remove the relationship

Note: Hard foreign keys can also be deleted this way - this only removes them from Curiosity, not from the database itself.