dtcs 0.3.0

Reference implementation of the Data Transformation Contract Standard (DTCS)
Documentation
dtcsVersion: "1.0.0"
id: "customer.normalize"
name: "Normalize Customer"
version: "0.2.0"

metadata:
  description: "Normalizes customer email addresses"
  classification: internal
  governance:
    owner: "data-platform"
    steward: "customer-analytics"
  provenance:
    author: "platform-team"
    createdAt: "2026-01-01T00:00:00Z"

inputs:
  - id: "customer_raw"
    schema:
      fields:
        - name: "customer_id"
          type: "string"
          nullable: false
        - name: "email"
          type: "string"
          nullable: false

outputs:
  - id: "customer_clean"
    schema:
      fields:
        - name: "customer_id"
          type: "string"
          nullable: false
        - name: "email"
          type: "string"
          nullable: true

semanticActions:
  - id: "normalize_email"
    action: "dtcs:lowercase"
    target: "customer_raw.email"

rules:
  - id: "customer_id_required"
    rule: "dtcs:not_null"
    target: "customer_raw.customer_id"
    phase: "postcondition"

lineage:
  mappings:
    - output: "customer_clean"
      inputs: ["customer_raw"]