dpcs 0.13.1

Reference implementation of the Data Pipeline Contract Standard (DPCS)
Documentation
dpcsVersion: "1.0.0"
id: "valid.graph.features"
version: "0.1.0"
interface:
  inputs:
    - id: "raw"
      name: "Raw"
      contractRef: "contracts/raw.odcs.yaml"
      purpose: "Raw ingress"
  outputs:
    - id: "published"
      name: "Published"
      contractRef: "contracts/published.odcs.yaml"
      purpose: "Published egress"
graph:
  entryPoints:
    - "ingest"
  exitPoints:
    - "publish"
  metadata:
    description: "Linear ingestion graph"
  edges:
    - from: "ingest"
      to: "transform"
      kind: "dependsOn"
    - from: "transform"
      to: "publish"
steps:
  - id: "ingest"
    type: "extension:ingress"
    inputs:
      - id: "raw"
    outputs:
      - id: "raw"
  - id: "transform"
    type: "dtcs:transform"
    inputs:
      - id: "raw"
    outputs:
      - id: "clean"
  - id: "publish"
    type: "extension:egress"
    inputs:
      - id: "clean"
    outputs:
      - id: "published"
dataFlow:
  - from: "interface.inputs.raw"
    to: "steps.ingest.inputs.raw"
    dataset: "raw"
  - from: "steps.ingest.outputs.raw"
    to: "steps.transform.inputs.raw"
    dataset: "raw"
    contractRef: "raw_contract"
  - from: "steps.transform.outputs.clean"
    to: "steps.publish.inputs.clean"
    dataset: "clean"
  - from: "steps.publish.outputs.published"
    to: "interface.outputs.published"
    dataset: "published"
contractReferences:
  - id: "raw_contract"
    type: "odcs"
    location: "contracts/raw.odcs.yaml"