Logo
NeoArc Studio

Schema Inheritance and Lineage

Build on existing schemas with inheritance. Track model-first lineage from schema fields to entity properties in the data model, with field-level tracing and lineage overrides.

Schema inheritance reduces duplication by letting child schemas build on parent definitions. Lineage tracking connects each field to its corresponding property in the data model (model.neoarc), documenting the path from schema fields to canonical model entities.

Schema Inheritance

Object schemas can extend other schemas using the extends property. The child schema inherits all fields from its parents and can add additional fields specific to its context.

Adding Inheritance

Inheritance Validation

The schema editor validates inheritance to prevent common problems.

Model-First Lineage

Lineage tracking documents where field data originates by mapping schema fields to entity properties in the data model. Each lineage entry uses sourceType: "graph" with graphFilePath: "model.neoarc" to reference the canonical model.

Lineage Entry Structure

{
  "sourceType": "graph",
  "graphFilePath": "model.neoarc",
  "nodeName": "Order",
  "nodeId": "f1e2d3c4-b5a6-4978-8d9e-0f1a2b3c4d5e",
  "propertyName": "OrderDate"
}

Adding Lineage to a Field

Lineage Overrides in Child Schemas

When extending schemas, child schemas often need different lineage mappings than the parent. Lineage overrides allow each derived schema to point inherited fields to the correct model entity and property.

How Overrides Work

Setting Up Lineage Overrides

Object Field Lineage Overrides

When using an Object field that references another schema, you can override lineage for the embedded fields. Select the Object field, open Lineage Overrides, and add lineage entries for specific fields within the referenced schema.

Field-Level Tracing to Model Entities

Each lineage mapping creates a maps-to edge in the Intent Graph, connecting the schema field node to the model entity property. This enables several capabilities:

Common Inheritance Patterns

Best Practices