{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/foundational/json-schema/foundational-app-graph-neighbors-response-schema.json",
  "title": "AppGraphNeighborsResponse",
  "description": "Upstream/downstream neighbors of one app-graph entity (design 11 §3.3): ACCESS edges\nuniformly for every entity kind (read = incoming, write = outgoing, ADR-226d3631), plus the\nTRIGGERS control arm for Operations (incoming upstream, outgoing downstream).",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/foundational-openapi.json#/components/schemas/AppGraphNeighborsResponse",
  "properties": {
    "entity": {
      "anyOf": [
        {
          "$ref": "#/$defs/APIOperationEntity"
        },
        {
          "$ref": "#/$defs/APICarrierEntity"
        },
        {
          "oneOf": [
            {
              "$ref": "#/$defs/TableEntity"
            },
            {
              "$ref": "#/$defs/DashboardEntity"
            },
            {
              "$ref": "#/$defs/FileEntity"
            },
            {
              "$ref": "#/$defs/ExecutedQueryEntity"
            },
            {
              "$ref": "#/$defs/SalesforceResourceEntity"
            },
            {
              "$ref": "#/$defs/SpreadsheetEntity"
            },
            {
              "$ref": "#/$defs/WebResourceEntity"
            },
            {
              "$ref": "#/$defs/PowerPlatformDataflowEntity"
            },
            {
              "$ref": "#/$defs/StreamEntity"
            },
            {
              "$ref": "#/$defs/WarehouseTaskEntity"
            },
            {
              "$ref": "#/$defs/DataShareEntity"
            }
          ]
        },
        {
          "$ref": "#/$defs/BaseEntity"
        },
        {
          "type": "null"
        }
      ],
      "title": "Entity",
      "description": "The focal entity itself, projected as a canvas card (FOU-15252). For an Operation this carries its own `ports` and `port_flow_edges` — the neighbour and trigger arms only ever hydrate the *opposite* end of a relationship, so without this the entity the user clicked renders portless. `None` only when the focal entity has no renderable app-layer projection."
    },
    "upstream": {
      "items": {
        "$ref": "#/$defs/AppGraphNeighborView"
      },
      "type": "array",
      "title": "Upstream"
    },
    "downstream": {
      "items": {
        "$ref": "#/$defs/AppGraphNeighborView"
      },
      "type": "array",
      "title": "Downstream"
    },
    "upstreamTotal": {
      "type": "integer",
      "title": "Upstreamtotal",
      "description": "Total upstream (incoming ACCESS + incoming TRIGGERS) neighbours across all pages. Page with offset/page_size until you have seen this many (FOU-14755).",
      "default": 0
    },
    "downstreamTotal": {
      "type": "integer",
      "title": "Downstreamtotal",
      "description": "Total downstream (outgoing ACCESS + outgoing TRIGGERS) neighbours across all pages.",
      "default": 0
    }
  },
  "type": "object",
  "required": [
    "upstream",
    "downstream"
  ],
  "$defs": {
    "APICarrierEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/APICertification"
            },
            {
              "type": "null"
            }
          ],
          "description": "The certification of the entity: the one set on the entity itself, else the one on its nearest ancestor (see `ancestors`) that has one"
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor `certification` is inherited from; null when the certification is the entity's own or it has none"
        },
        "entityType": {
          "type": "string",
          "const": "CARRIER",
          "title": "Entitytype",
          "default": "CARRIER"
        },
        "ancestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/APILocationRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ancestors",
          "description": "The locations the entity sits in, outermost first: its containers (account, database, schema, ...) and, for a column, its table. The entity inherits the certification and the custom tags set on them, unless it has its own."
        },
        "family": {
          "type": "string",
          "title": "Family",
          "description": "CarrierKey.Family name, e.g. TOPIC, GLUE_JOB, DAG_ID"
        },
        "namespace": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Namespace"
        },
        "address": {
          "type": "string",
          "title": "Address"
        },
        "selector": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Selector"
        },
        "displayName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Displayname"
        },
        "breadcrumbs": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Breadcrumbs",
          "description": "The containers this entity sits in, outermost first — an Informatica operation's `[repo_schema, folder]`, an Airflow task's `[dag_id]` (ADR-5f80bba8). The app-layer counterpart of a dataset's `db › schema` descriptor, and empty whenever the entity genuinely has no hierarchy (an Airflow DAG's namespace is unset), which the frontend renders as an icon-only row rather than a placeholder. Excludes the platform, which every surface already renders as an icon."
        },
        "matchStatus": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "matched",
                "producer_only",
                "consumer_only"
              ]
            },
            {
              "type": "null"
            }
          ],
          "title": "Matchstatus",
          "description": "Resolution state derived from the carrier's incoming edges: matched (has both a producer and a consumer), producer_only, or consumer_only (design 11 §5.1). None when it was not resolved against the graph."
        }
      },
      "type": "object",
      "required": [
        "id",
        "family",
        "address"
      ],
      "title": "APICarrierEntity",
      "description": "The API projection of a ``Carrier`` entity (design 01 §4). See :class:`APIOperationEntity`\nfor the construction-path rationale."
    },
    "APICertification": {
      "type": "string",
      "enum": [
        "certified",
        "deprecated"
      ],
      "title": "APICertification"
    },
    "APIColumnEntitySlim": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entityid",
          "description": "The column's own entity id: the id lineage walks and diff entries name it by. `id` addresses it in this API."
        },
        "name": {
          "type": "string",
          "title": "Name",
          "description": "The name of the column"
        },
        "columnType": {
          "anyOf": [
            {
              "$ref": "#/$defs/ColumnType"
            },
            {
              "type": "null"
            }
          ],
          "description": "The type of the column"
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid",
          "description": "The immediate owning Port or parent Field"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/APICertification"
            },
            {
              "type": "null"
            }
          ],
          "description": "The certification of the column: the one set on the column itself, else the one on its nearest ancestor (its table, then its containers) that has one"
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor `certification` is inherited from; null when the certification is the column's own or it has none"
        },
        "labels": {
          "anyOf": [
            {
              "additionalProperties": {
                "type": "string"
              },
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "title": "Labels",
          "description": "The column's labels, embedded with `labels`: the tags scans found on it and the custom tags in effect on it, its own and, per tag name it has none of, its nearest ancestor's. A tag with several values joins them with ', '."
        },
        "owners": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/PublicEntityOwner"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Owners",
          "description": "The column's owners, embedded with `owners`: its own and every ancestor's, each user once."
        }
      },
      "type": "object",
      "required": [
        "id",
        "name"
      ],
      "title": "APIColumnEntitySlim"
    },
    "APIEntityType": {
      "type": "string",
      "enum": [
        "TABLE",
        "DASHBOARD",
        "FILE",
        "STREAM",
        "WAREHOUSE_TASK",
        "SALESFORCE_RESOURCE",
        "SPREADSHEET",
        "WEB_RESOURCE",
        "POWER_PLATFORM_DATAFLOW",
        "EXECUTED_QUERY",
        "COLUMN",
        "DASHBOARD_COLUMN",
        "FILE_COLUMN",
        "STREAM_COLUMN",
        "WAREHOUSE_TASK_COLUMN",
        "SALESFORCE_RESOURCE_COLUMN",
        "SPREADSHEET_COLUMN",
        "WEB_RESOURCE_COLUMN",
        "POWER_PLATFORM_DATAFLOW_COLUMN",
        "EXECUTED_QUERY_COLUMN",
        "OPERATION",
        "PORT",
        "CARRIER",
        "UNKNOWN"
      ],
      "title": "APIEntityType",
      "description": "Enum for the types of entities that can be returned in the lineage response"
    },
    "APILastRun": {
      "properties": {
        "outcome": {
          "$ref": "#/$defs/RunOutcome"
        },
        "status": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Status",
          "description": "The status exactly as the connector served it"
        },
        "startedAt": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Startedat",
          "description": "When the run started, as served"
        },
        "finishedAt": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Finishedat",
          "description": "When the run finished, as served"
        },
        "durationSeconds": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Durationseconds"
        },
        "error": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Error",
          "description": "The run's error message, when it failed with one"
        }
      },
      "type": "object",
      "required": [
        "outcome"
      ],
      "title": "APILastRun",
      "description": "The latest run a connector reported for an Operation (or one of its placements)."
    },
    "APILocationRef": {
      "properties": {
        "locationId": {
          "type": "string",
          "title": "Locationid",
          "description": "The location's id. The certification and tag endpoints take it as `entity_id`, so a value set on a container applies to everything under it."
        },
        "level": {
          "type": "string",
          "title": "Level",
          "description": "A container's level, such as `account`, `db` or `schema`, or an entity's type, such as `table`"
        },
        "name": {
          "type": "string",
          "title": "Name",
          "description": "The container's or entity's name"
        }
      },
      "type": "object",
      "required": [
        "locationId",
        "level",
        "name"
      ],
      "title": "APILocationRef",
      "description": "A location a certification or custom tags can be set on: a container (an account, a database, a schema,\na BI project or folder, ...) or an entity."
    },
    "APIOperationEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/APICertification"
            },
            {
              "type": "null"
            }
          ],
          "description": "The certification of the entity: the one set on the entity itself, else the one on its nearest ancestor (see `ancestors`) that has one"
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor `certification` is inherited from; null when the certification is the entity's own or it has none"
        },
        "entityType": {
          "type": "string",
          "const": "OPERATION",
          "title": "Entitytype",
          "default": "OPERATION"
        },
        "ancestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/APILocationRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ancestors",
          "description": "The locations the entity sits in, outermost first: its containers (account, database, schema, ...) and, for a column, its table. The entity inherits the certification and the custom tags set on them, unless it has its own."
        },
        "kind": {
          "type": "string",
          "title": "Kind",
          "description": "OperationKind name, e.g. TASK, DAG, FUNCTION"
        },
        "platform": {
          "type": "string",
          "title": "Platform",
          "description": "Operation.Platform name, e.g. AIRFLOW"
        },
        "executionMode": {
          "type": "string",
          "title": "Executionmode",
          "description": "ExecutionMode name: BATCH or CONTINUOUS"
        },
        "name": {
          "type": "string",
          "title": "Name"
        },
        "displayName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Displayname"
        },
        "namespace": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Namespace"
        },
        "configParams": {
          "items": {
            "$ref": "#/$defs/APIParamBinding"
          },
          "type": "array",
          "title": "Configparams"
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid",
          "description": "Containment parent entity id (e.g. a TASK's DAG), when this operation is contained in exactly one container; the frontend derives containment child ids from it (design 11 §6.1, ADR-96f314e8/ADR-215f2779). Since ADR-85e440ea an Operation is minted per definition, so containment is carried by `placements`: this field is the single-container convenience projection and is None for a definition reused across containers — read `placements` for the general case."
        },
        "placements": {
          "items": {
            "$ref": "#/$defs/APIPlacement"
          },
          "type": "array",
          "title": "Placements",
          "description": "Every container this operation is placed in, with that placement's own run history (ADR-85e440ea). A definition reused across N containers has N entries; the per-placement facts live here rather than in `config_params`, which would otherwise hold N nameless copies of each."
        },
        "runSummary": {
          "anyOf": [
            {
              "$ref": "#/$defs/APIRunSummary"
            },
            {
              "type": "null"
            }
          ],
          "description": "The operation's runs, typed: as its first placement with run params reports them, else as its own `config_params` do. None when nothing reports a run fact. A placement's own runs are on `placements[].run_summary`"
        },
        "templateMultiplicity": {
          "anyOf": [
            {
              "$ref": "#/$defs/APITemplateMultiplicity"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ×N template marker (F5), present only for a template fan-out operation"
        },
        "fusesWithEntityId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Fuseswithentityid",
          "description": "The id of the single table this operation 1:1-fuses with (a MODEL that writes exactly one table whose only producer is this operation, design 10 §4.1); the frontend collapses the model↔table pair into one fused card. None when the operation is not fusable."
        },
        "ports": {
          "items": {
            "$ref": "#/$defs/APIPortEntity"
          },
          "type": "array",
          "title": "Ports",
          "description": "The operation's ports — its grouped PARAM/PAYLOAD inputs and RETURN outputs (design 01 §3, ADR-96f314e8), rendered as column-like rows on the operation card. Graph-derived, so populated only when this operation is served as a canvas card (neighbors / triggers); empty on the pure proto projection (provenance / search rows)."
        },
        "portFlowEdges": {
          "items": {
            "$ref": "#/$defs/PortFlowEdgeView"
          },
          "type": "array",
          "title": "Portflowedges",
          "description": "The PORT_FLOW edges (port→port arg/return data flow, ADR-96f314e8) incident to this operation's ports, with their per-caller ParamBindings. Same graph-derived, card-only population as `ports`."
        },
        "breadcrumbs": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Breadcrumbs",
          "description": "The containers this entity sits in, outermost first — an Informatica operation's `[repo_schema, folder]`, an Airflow task's `[dag_id]` (ADR-5f80bba8). The app-layer counterpart of a dataset's `db › schema` descriptor, and empty whenever the entity genuinely has no hierarchy (an Airflow DAG's namespace is unset), which the frontend renders as an icon-only row rather than a placeholder. Excludes the platform, which every surface already renders as an icon."
        },
        "portColumnFlowEdges": {
          "items": {
            "$ref": "#/$defs/PortColumnFlowEdgeView"
          },
          "type": "array",
          "title": "Portcolumnflowedges",
          "description": "The column-granular PORT_FLOW edges (ADR-2c23c57d) incident to this operation's port fields — the arm whose far end is a dataset column rather than another operation's port, which makes this operation a visible hop in column lineage. Same graph-derived, card-only population as `ports`."
        }
      },
      "type": "object",
      "required": [
        "id",
        "kind",
        "platform",
        "executionMode",
        "name"
      ],
      "title": "APIOperationEntity",
      "description": "The API projection of an ``Operation`` entity (design 01 §2, design 11 §6.1).\n\nConstructed directly from the proto ``Entity`` via :func:`api_operation_entity_from_proto`\n— never through ``from_entity_type``/``api_entity_from_entity`` (ADR-3c1fad53:\napp-graph entities have no dataset-document representation and are served by their own surface)."
    },
    "APIParamBinding": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "kind": {
          "type": "string",
          "title": "Kind"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Value",
          "description": "The resolved value, when resolvable"
        },
        "valueSource": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Valuesource",
          "description": "How value was obtained: literal, config:<key>, env:<VAR>, arg:<caller_port>, ..."
        }
      },
      "type": "object",
      "required": [
        "name",
        "kind"
      ],
      "title": "APIParamBinding",
      "description": "The API projection of ``ParamBinding`` (design 01 §3.1)."
    },
    "APIPlacement": {
      "properties": {
        "containerId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Containerid",
          "description": "The containing DAG/workflow operation's entity id"
        },
        "instanceKey": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Instancekey",
          "description": "Platform-native placement id (Informatica OPB_TASK_INST.INSTANCE_ID, an Airflow task_id). Unique only within its container, so never an identity on its own."
        },
        "displayName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Displayname",
          "description": "The name this placement carries when it differs from the definition's name"
        },
        "runParams": {
          "items": {
            "$ref": "#/$defs/APIParamBinding"
          },
          "type": "array",
          "title": "Runparams",
          "description": "This placement's own run history (last_run_*, row counts)"
        },
        "runSummary": {
          "anyOf": [
            {
              "$ref": "#/$defs/APIRunSummary"
            },
            {
              "type": "null"
            }
          ],
          "description": "This placement's runs, typed: its `run_params` read over the operation's `config_params`. None when the placement serves no run params"
        }
      },
      "type": "object",
      "title": "APIPlacement",
      "description": "One occurrence of an Operation inside a container (ADR-85e440ea).\n\nSince an Operation is minted per definition, \"which container is this in\" and \"how did its last\nrun go\" are per-placement facts: a session reused by three workflows has three placements, each\nwith its own outcome. ``run_params`` reuses the ``config_params`` binding shape and names, so the\ninspector's prefix grouping applies to it unchanged."
    },
    "APIPortCoverageGap": {
      "properties": {
        "gap": {
          "type": "string",
          "title": "Gap"
        },
        "valuePath": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Valuepath"
        },
        "callSiteKey": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Callsitekey"
        },
        "runId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Runid"
        }
      },
      "type": "object",
      "required": [
        "gap"
      ],
      "title": "APIPortCoverageGap",
      "description": "One retained unsupported-evidence observation for a Port."
    },
    "APIPortEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/APICertification"
            },
            {
              "type": "null"
            }
          ],
          "description": "The certification of the entity: the one set on the entity itself, else the one on its nearest ancestor (see `ancestors`) that has one"
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor `certification` is inherited from; null when the certification is the entity's own or it has none"
        },
        "entityType": {
          "type": "string",
          "const": "PORT",
          "title": "Entitytype",
          "default": "PORT"
        },
        "ancestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/APILocationRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ancestors",
          "description": "The locations the entity sits in, outermost first: its containers (account, database, schema, ...) and, for a column, its table. The entity inherits the certification and the custom tags set on them, unless it has its own."
        },
        "name": {
          "type": "string",
          "title": "Name",
          "description": "The port's identifier within its Operation. Identity-bearing, and not necessarily the name of whatever sits on the other end of its edge (ADR-d121cc23)"
        },
        "displayName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Displayname",
          "description": "The port's human label, when it differs from `name` — an Informatica port is keyed by its widget instance but labelled with the dataset it moves. Cosmetic; render this and fall back to `name`"
        },
        "kind": {
          "type": "string",
          "title": "Kind",
          "description": "PortKind name: PARAM, RETURN, or PAYLOAD"
        },
        "index": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Index",
          "description": "Positional ordinal for positional args (mirrors Column.index)"
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid",
          "description": "The containing Operation's entity id (ADR-96f314e8)"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/APIColumnEntitySlim"
          },
          "type": "array",
          "title": "Children",
          "description": "The port's field children (design 01 §3), shown in the inspector"
        },
        "fieldsTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Fieldstruncated",
          "description": "True when `children` is only a bounded partial projection of the Port's stored Field tree. False means field hydration completed; omitted means this endpoint did not hydrate Fields."
        },
        "breadcrumbs": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Breadcrumbs",
          "description": "The containers this port sits in, outermost first, ENDING IN ITS OWNING OPERATION's name — unlike `APIOperationEntity.breadcrumbs`, which ends at that operation's containers. A port is rendered as a row of its own in search, where the operation is the crumb that tells two same-named ports apart (FOU-16141). Empty when the owning operation has no location, which the clients render as an icon-only row."
        },
        "coverageGaps": {
          "items": {
            "$ref": "#/$defs/APIPortCoverageGap"
          },
          "type": "array",
          "title": "Coveragegaps",
          "description": "Machine-readable reasons why finer-grained flow could not safely be materialized"
        }
      },
      "type": "object",
      "required": [
        "id",
        "name",
        "kind"
      ],
      "title": "APIPortEntity",
      "description": "The API projection of a ``Port`` entity (design 01 §3, ADR-96f314e8) — a parameter or return of\nan Operation, child of it via ``parent_id``. Its field children reuse the slim column projection\n(ADR-96f314e8: a port's fields are Column subtypes). See :class:`APIOperationEntity` for the\nconstruction-path rationale (never through ``from_entity_type``)."
    },
    "APIPortFlowEvidence": {
      "properties": {
        "callSiteKey": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Callsitekey"
        },
        "conditionExpr": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditionexpr"
        }
      },
      "type": "object",
      "title": "APIPortFlowEvidence",
      "description": "Paired call-site and predicate evidence for one collapsed PORT_FLOW contribution."
    },
    "APIRunSummary": {
      "properties": {
        "lastRun": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILastRun"
            },
            {
              "type": "null"
            }
          ]
        },
        "runCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Runcount",
          "description": "How many runs the connector counted"
        },
        "runCountWindowDays": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Runcountwindowdays",
          "description": "`run_count` covers the last this many days, when it is a windowed count"
        },
        "runCountSince": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Runcountsince",
          "description": "`run_count` covers the runs since this time"
        },
        "failedRunCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Failedruncount"
        },
        "consecutiveFailures": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Consecutivefailures"
        },
        "avgDurationSeconds": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Avgdurationseconds"
        }
      },
      "type": "object",
      "title": "APIRunSummary",
      "description": "What a connector reported about an Operation's runs: its last run and the run aggregates it\nserves. Connectors serve aggregates rather than run lists, so every field is absent unless the\nconnector served it; nothing is estimated."
    },
    "APITemplateMultiplicity": {
      "properties": {
        "isTemplate": {
          "type": "boolean",
          "title": "Istemplate",
          "description": "True when this operation stands for a ×N fan-out"
        },
        "resolvedSourceEntityId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Resolvedsourceentityid",
          "description": "Entity id whose values would enumerate the fan-out instances, when known"
        }
      },
      "type": "object",
      "required": [
        "isTemplate"
      ],
      "title": "APITemplateMultiplicity",
      "description": "The ×N template marker of an ``Operation`` (design 01 §2, F5): the op stands for a\nstatically unresolvable fan-out. ``resolved_source_entity_id`` names the entity whose values\nwould enumerate the instances; the count N is never fabricated (design 01 §2)."
    },
    "AppGraphNeighborView": {
      "properties": {
        "entity": {
          "anyOf": [
            {
              "$ref": "#/$defs/APIOperationEntity"
            },
            {
              "$ref": "#/$defs/APICarrierEntity"
            },
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/TableEntity"
                },
                {
                  "$ref": "#/$defs/DashboardEntity"
                },
                {
                  "$ref": "#/$defs/FileEntity"
                },
                {
                  "$ref": "#/$defs/ExecutedQueryEntity"
                },
                {
                  "$ref": "#/$defs/SalesforceResourceEntity"
                },
                {
                  "$ref": "#/$defs/SpreadsheetEntity"
                },
                {
                  "$ref": "#/$defs/WebResourceEntity"
                },
                {
                  "$ref": "#/$defs/PowerPlatformDataflowEntity"
                },
                {
                  "$ref": "#/$defs/StreamEntity"
                },
                {
                  "$ref": "#/$defs/WarehouseTaskEntity"
                },
                {
                  "$ref": "#/$defs/DataShareEntity"
                }
              ]
            },
            {
              "$ref": "#/$defs/BaseEntity"
            }
          ],
          "title": "Entity"
        },
        "edgeType": {
          "type": "string",
          "enum": [
            "ACCESS",
            "TRIGGERS",
            "RUNS",
            "PRECEDES"
          ],
          "title": "Edgetype",
          "description": "ACCESS (op<->dataset/carrier data access, ADR-226d3631), TRIGGERS (Operations only — the control arm, ADR-c3197786), or — only with include_control_flow — RUNS (containment) / PRECEDES (sequencing), also Operations only"
        },
        "existenceOnly": {
          "type": "boolean",
          "title": "Existenceonly",
          "description": "Gating (sensor) vs causing (data-aware) variant of the edge"
        },
        "subscribes": {
          "type": "boolean",
          "title": "Subscribes",
          "description": "Continuous consume flavor of the edge, vs a one-shot read/trigger"
        }
      },
      "type": "object",
      "required": [
        "entity",
        "edgeType",
        "existenceOnly",
        "subscribes"
      ],
      "title": "AppGraphNeighborView",
      "description": "One directed edge incident to a queried app-graph entity (design 11 §3.3). ``entity`` is\nalways the neighbor at the non-queried endpoint — a dataset endpoint carries the real\n``DatasetEntity`` document (ADR-a1bfe384), not the minimal id+type ``APIProvenancePathEntity``\nfallback ``/provenance``/``/triggers`` use.\n\n``RUNS``/``PRECEDES`` rows appear only when the request opts in via ``include_control_flow``\n(FOU-14959); a caller that does not ask for them sees exactly the ACCESS/TRIGGERS vocabulary\nthis view has always served."
    },
    "AuthoredTransformations": {
      "properties": {
        "rawMarkdown": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Rawmarkdown"
        },
        "friendlyMarkdown": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Friendlymarkdown"
        }
      },
      "type": "object",
      "title": "AuthoredTransformations",
      "description": "Connector-authored, final-form transformation markdown for a column.\n\n``raw_markdown`` backs GET /transformations_raw and ``friendly_markdown``\nbacks GET /transformations; either may be absent."
    },
    "BaseEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/APICertification"
            },
            {
              "type": "null"
            }
          ],
          "description": "The certification of the entity: the one set on the entity itself, else the one on its nearest ancestor (see `ancestors`) that has one"
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor `certification` is inherited from; null when the certification is the entity's own or it has none"
        },
        "entityType": {
          "$ref": "#/$defs/APIEntityType"
        },
        "ancestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/APILocationRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ancestors",
          "description": "The locations the entity sits in, outermost first: its containers (account, database, schema, ...) and, for a column, its table. The entity inherits the certification and the custom tags set on them, unless it has its own."
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityType"
      ],
      "title": "BaseEntity",
      "description": "A base entity."
    },
    "BaseEntityMetadata": {
      "properties": {
        "labels": {
          "anyOf": [
            {
              "additionalProperties": {
                "type": "string"
              },
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "title": "Labels"
        }
      },
      "type": "object",
      "title": "BaseEntityMetadata"
    },
    "ChangeDescriptor": {
      "properties": {
        "changeType": {
          "$ref": "#/$defs/ChangeType"
        },
        "previousName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Previousname"
        }
      },
      "type": "object",
      "required": [
        "changeType"
      ],
      "title": "ChangeDescriptor"
    },
    "ChangeType": {
      "type": "string",
      "enum": [
        "added",
        "removed",
        "modified",
        "renamed"
      ],
      "title": "ChangeType"
    },
    "ColumnDataValidation": {
      "properties": {
        "isRequired": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Isrequired"
        },
        "acceptedValues": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Acceptedvalues"
        }
      },
      "type": "object",
      "title": "ColumnDataValidation",
      "description": "What a column's source declares about its values, e.g. a dbt ``not_null`` or ``accepted_values`` test."
    },
    "ColumnEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "column",
          "title": "Entitytype",
          "default": "column"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "columnType": {
          "anyOf": [
            {
              "$ref": "#/$defs/ColumnType"
            },
            {
              "type": "null"
            }
          ]
        },
        "isPrimaryKey": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Isprimarykey"
        },
        "columnDataValidation": {
          "anyOf": [
            {
              "$ref": "#/$defs/ColumnDataValidation"
            },
            {
              "type": "null"
            }
          ]
        },
        "transformGraph": {
          "anyOf": [
            {
              "$ref": "#/$defs/TransformGraph"
            },
            {
              "type": "null"
            }
          ]
        },
        "authoredTransformations": {
          "anyOf": [
            {
              "$ref": "#/$defs/AuthoredTransformations"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName"
      ],
      "title": "ColumnEntity"
    },
    "ColumnType": {
      "type": "string",
      "enum": [
        "STRING",
        "INTEGER",
        "FLOAT",
        "BOOLEAN",
        "TIMESTAMP",
        "STRUCT",
        "BLOB",
        "DECIMAL",
        "DATE",
        "TIME",
        "INTERVAL",
        "JSON",
        "ARRAY",
        "GEOGRAPHY",
        "MAP",
        "BINARY"
      ],
      "title": "ColumnType"
    },
    "ConnectorPlatformName": {
      "type": "string",
      "enum": [
        "bigquery",
        "snowflake",
        "postgres",
        "looker",
        "tableau",
        "powerbi",
        "airflow",
        "spark",
        "pyspark",
        "dbt",
        "lookml",
        "hive",
        "greenplum",
        "ruby_active_record",
        "sigma",
        "manual_upload",
        "datastream",
        "dynamic",
        "demo_spreadsheet",
        "dbt_manifest_file",
        "liquibase",
        "eloquent",
        "mode",
        "dataform",
        "doctrine",
        "typeorm",
        "entity_framework_core",
        "sisense",
        "looker_studio",
        "databricks",
        "fivetran",
        "airbyte",
        "redshift",
        "synapse",
        "sap_hana",
        "sap_ecc",
        "snowflake_lineage",
        "bigquery_lineage",
        "scala_reactive_mongo",
        "scala_kafka",
        "typescript_mongo",
        "oracle_warehouse",
        "oracle_db",
        "db2_mainframe",
        "athena",
        "s3",
        "tdv",
        "beam",
        "java",
        "java_api_kafka",
        "scala_requests",
        "python",
        "python_code",
        "java_code",
        "scala_code",
        "cobol_code",
        "hex",
        "salesforce",
        "salesforce_dx",
        "payoneer_terraform",
        "meli_dataflow",
        "meli_template_processing",
        "sql_repo",
        "superset",
        "talend_etl",
        "informatica",
        "informatica_powercenter_xml",
        "mapping_document",
        "spotfire",
        "mysql",
        "collibra",
        "openlineage",
        "datadog",
        "thoughtspot",
        "wiz",
        "cyera",
        "bigid",
        "sentra",
        "oracle_utilities_ccb",
        "automic_uc4",
        "managed_file_transfer",
        "dummy",
        "foundational_data_contract",
        "terraform_config",
        "vertx_config",
        "cloudformation_config",
        "nationwide_dispatcher_config",
        "airflow_dbt_configuration",
        "sql_seeded_dbt_configuration",
        "demo_warehouse_connector",
        "demo_bi_connector",
        "demo_upstream_connector",
        "demo_code_file"
      ],
      "title": "ConnectorPlatformName"
    },
    "DashboardEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "dashboard",
          "title": "Entitytype",
          "default": "dashboard"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "platform": {
          "$ref": "#/$defs/VisualizationPlatform"
        },
        "namespace": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Namespace"
        },
        "url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Url"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "platform"
      ],
      "title": "DashboardEntity"
    },
    "DataSensitivity": {
      "properties": {
        "level": {
          "$ref": "#/$defs/DataSensitivityLevel"
        },
        "dataClasses": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Dataclasses"
        },
        "sources": {
          "items": {
            "$ref": "#/$defs/SensitivitySource"
          },
          "type": "array",
          "title": "Sources"
        }
      },
      "type": "object",
      "required": [
        "level",
        "dataClasses",
        "sources"
      ],
      "title": "DataSensitivity",
      "description": "An entity's sensitivity across all its sources (see ``build_data_sensitivity``)."
    },
    "DataSensitivityLevel": {
      "type": "string",
      "enum": [
        "public",
        "internal",
        "confidential",
        "restricted"
      ],
      "title": "DataSensitivityLevel",
      "description": "How sensitive an entity's data is, ordered lowest to highest (compare with ``rank``).\n\nMapping from Cyera's sensitivity labels:\n\n* ``VerySensitive`` -> ``RESTRICTED``\n* ``Sensitive`` -> ``CONFIDENTIAL``\n* ``Internal`` -> ``INTERNAL``\n* ``NotSensitive`` -> ``PUBLIC``: assessed and nothing sensitive found, i.e. \"clean\".\n\nCyera's ``Unclassified`` means \"not assessed\" and maps to no source at all."
    },
    "DataShareDirection": {
      "type": "string",
      "enum": [
        "unknown",
        "outbound",
        "inbound"
      ],
      "title": "DataShareDirection"
    },
    "DataShareEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "data_share",
          "title": "Entitytype",
          "default": "data_share"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "platform": {
          "$ref": "#/$defs/TablePlatform"
        },
        "direction": {
          "$ref": "#/$defs/DataShareDirection"
        },
        "account": {
          "type": "string",
          "title": "Account"
        },
        "providerAccount": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Provideraccount"
        },
        "createdOn": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time"
            },
            {
              "type": "null"
            }
          ],
          "title": "Createdon"
        },
        "ownerRole": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Ownerrole"
        },
        "secureObjectsOnly": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Secureobjectsonly"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "platform",
        "direction",
        "account"
      ],
      "title": "DataShareEntity"
    },
    "DatasetCertification": {
      "type": "string",
      "enum": [
        "certified",
        "deprecated"
      ],
      "title": "DatasetCertification"
    },
    "EntityIssueIndication": {
      "properties": {
        "type": {
          "$ref": "#/$defs/EntityIssueStateKey"
        },
        "shortDescription": {
          "type": "string",
          "title": "Shortdescription"
        },
        "entityId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entityid"
        },
        "displayName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Displayname"
        },
        "severity": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "critical",
                "error",
                "warning",
                "info"
              ]
            },
            {
              "type": "null"
            }
          ],
          "title": "Severity"
        }
      },
      "type": "object",
      "required": [
        "type",
        "shortDescription"
      ],
      "title": "EntityIssueIndication"
    },
    "EntityIssueState": {
      "properties": {
        "issues": {
          "items": {
            "$ref": "#/$defs/EntityIssueIndication"
          },
          "type": "array",
          "title": "Issues",
          "default": []
        }
      },
      "type": "object",
      "title": "EntityIssueState",
      "description": "All issues currently affecting an entity; an entity may carry several at once."
    },
    "EntityIssueStateKey": {
      "type": "string",
      "enum": [
        "unused",
        "non_existing",
        "freshness",
        "volume_anomaly",
        "security_issue"
      ],
      "title": "EntityIssueStateKey",
      "description": "Normalized, front-end-facing key for a class of issue affecting an entity.\n\nNew issue types are surfaced by adding a key here plus a mapping in the\nentity-issue-state registry; nothing else in the response shape changes."
    },
    "EntityPlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "BIGQUERY",
        "SNOWFLAKE",
        "POSTGRES",
        "HIVE",
        "POWER_BI",
        "TABLEAU",
        "LOOKER",
        "DATABRICKS",
        "SQL_SERVER",
        "MODE_ANALYTICS",
        "MYSQL",
        "MSSQL",
        "SISENSE",
        "REDSHIFT",
        "ORACLE",
        "ORACLE_DB",
        "LOOKER_STUDIO",
        "SYNAPSE",
        "SIGMA",
        "S3",
        "HDFS",
        "MONGO_DB",
        "ATHENA",
        "PRESTO",
        "TDV",
        "SAP_HANA",
        "SAP_ECC",
        "INFORMATICA",
        "TALEND",
        "HEX",
        "THOUGHTSPOT",
        "NETEZZA",
        "TERADATA",
        "DB2",
        "ODBC",
        "SQS",
        "KINESIS",
        "ICEBERG",
        "REDIS",
        "COUCHBASE",
        "SOLR",
        "MARKETO",
        "DYNAMICS",
        "SPOTFIRE",
        "KAFKA",
        "FLINK",
        "GOOGLE_PUBSUB",
        "BIGQUEUE",
        "JMS",
        "MQSERIES",
        "VERTX_EVENTBUS",
        "LOCAL",
        "GCS",
        "API",
        "AI",
        "APPLICATION",
        "MAINFRAME",
        "FTP",
        "SFTP",
        "AZURE_BLOB_STORAGE",
        "AZURE_DATA_LAKE",
        "GOOGLE_SHEETS",
        "EXCEL",
        "GOOGLE_DRIVE",
        "ONE_DRIVE",
        "SALESFORCE",
        "WEB",
        "POWER_PLATFORM",
        "AIRFLOW",
        "DBT",
        "GLUE",
        "LAMBDA",
        "KAFKA_LISTENER",
        "SPARK",
        "CODE",
        "TERRAFORM",
        "CLOUDFORMATION",
        "VERTX",
        "NATIONWIDE_DISPATCHER",
        "SHELL"
      ],
      "title": "EntityPlatform"
    },
    "EntitySourceDetails": {
      "properties": {
        "connectorId": {
          "type": "integer",
          "title": "Connectorid"
        },
        "connectorDisplayName": {
          "type": "string",
          "title": "Connectordisplayname"
        },
        "platformName": {
          "$ref": "#/$defs/ConnectorPlatformName"
        },
        "lastScannedAt": {
          "type": "string",
          "format": "date-time",
          "title": "Lastscannedat"
        },
        "subConnectorKey": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Subconnectorkey"
        },
        "subRunLabel": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Subrunlabel"
        },
        "platform": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityPlatform"
            },
            {
              "type": "null"
            }
          ]
        },
        "sourceCodeId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourcecodeid"
        },
        "sourcePointer": {
          "anyOf": [
            {
              "oneOf": [
                {
                  "$ref": "#/$defs/URLSourcePointer"
                },
                {
                  "$ref": "#/$defs/RepositorySourcePointer"
                },
                {
                  "$ref": "#/$defs/FreeTextSourcePointer"
                }
              ]
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourcepointer"
        },
        "isReference": {
          "type": "boolean",
          "title": "Isreference",
          "default": false
        },
        "projectName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Projectname"
        },
        "projectPath": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Projectpath"
        },
        "projectFilePath": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Projectfilepath"
        }
      },
      "type": "object",
      "required": [
        "connectorId",
        "connectorDisplayName",
        "platformName",
        "lastScannedAt"
      ],
      "title": "EntitySourceDetails",
      "description": "Describes the details of source from which we extracted entity metadata (AKA connector)."
    },
    "ExecutedQueryEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "executed_query",
          "title": "Entitytype",
          "default": "executed_query"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "userEmail": {
          "type": "string",
          "title": "Useremail"
        },
        "extractionDatabase": {
          "type": "string",
          "title": "Extractiondatabase"
        },
        "platform": {
          "$ref": "#/$defs/TablePlatform"
        },
        "parentTags": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object",
          "title": "Parenttags"
        },
        "grandparentTags": {
          "additionalProperties": {
            "type": "string"
          },
          "type": "object",
          "title": "Grandparenttags"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "userEmail",
        "extractionDatabase",
        "platform",
        "parentTags",
        "grandparentTags"
      ],
      "title": "ExecutedQueryEntity"
    },
    "FileEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "file",
          "title": "Entitytype",
          "default": "file"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "uri": {
          "type": "string",
          "title": "Uri"
        },
        "platform": {
          "$ref": "#/$defs/StoragePlatform"
        },
        "fileName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Filename"
        },
        "dirName": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Dirname"
        },
        "rootFolder": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Rootfolder"
        },
        "fileFormat": {
          "anyOf": [
            {
              "$ref": "#/$defs/FileFormat"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "uri",
        "platform"
      ],
      "title": "FileEntity"
    },
    "FileFormat": {
      "type": "string",
      "enum": [
        "Unknown",
        "TEXT",
        "CSV",
        "JSON",
        "PARQUET",
        "API_FORMAT",
        "AI_FORMAT"
      ],
      "title": "FileFormat"
    },
    "FreeTextSourcePointer": {
      "properties": {
        "type": {
          "type": "string",
          "const": "free_text",
          "title": "Type",
          "default": "free_text"
        },
        "freeText": {
          "type": "string",
          "title": "Freetext"
        }
      },
      "type": "object",
      "required": [
        "freeText"
      ],
      "title": "FreeTextSourcePointer",
      "description": "Pointer containing a free-text description of the source."
    },
    "LocationAncestor": {
      "properties": {
        "locationId": {
          "type": "string",
          "title": "Locationid"
        },
        "level": {
          "type": "string",
          "title": "Level"
        },
        "name": {
          "type": "string",
          "title": "Name"
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "locationId",
        "level",
        "name"
      ],
      "title": "LocationAncestor",
      "description": "A container an entity sits in, with the certification stored on the container itself;\n``None`` when it carries none."
    },
    "LocationRef": {
      "properties": {
        "locationId": {
          "type": "string",
          "title": "Locationid"
        },
        "level": {
          "type": "string",
          "title": "Level"
        },
        "name": {
          "type": "string",
          "title": "Name"
        }
      },
      "type": "object",
      "required": [
        "locationId",
        "level",
        "name"
      ],
      "title": "LocationRef",
      "description": "A location a value is stored on: a container (``level`` is its segment type, such as\n``schema``), or an entity (``level`` is its entity type)."
    },
    "PortColumnFlowEdgeView": {
      "properties": {
        "sourceId": {
          "type": "string",
          "title": "Sourceid",
          "description": "The source endpoint entity id: a Port, Field, dataset, or column"
        },
        "sourceParentId": {
          "type": "string",
          "title": "Sourceparentid",
          "description": "The source endpoint's owning Port or dataset; itself when whole-value"
        },
        "destId": {
          "type": "string",
          "title": "Destid",
          "description": "The dest endpoint entity id: a Port, Field, dataset, or column"
        },
        "destParentId": {
          "type": "string",
          "title": "Destparentid",
          "description": "The dest endpoint's owning Port or dataset; itself when whole-value"
        },
        "transformations": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Transformations",
          "description": "Expressions applied along this flow"
        },
        "runIds": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Runids",
          "description": "Static extraction runs that resolved this flow"
        },
        "conditional": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditional",
          "description": "Whether this flow is branch-conditional, when known"
        },
        "conditionExpr": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditionexpr",
          "description": "Resolved branch predicate, when available"
        },
        "callSiteKeys": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Callsitekeys",
          "description": "Source sites that established this flow"
        },
        "conditionExprs": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Conditionexprs",
          "description": "All predicates observed for this flow"
        },
        "portFlowEvidence": {
          "items": {
            "$ref": "#/$defs/APIPortFlowEvidence"
          },
          "type": "array",
          "title": "Portflowevidence",
          "description": "Paired call-site and predicate evidence, including explicit empty unconditional entries"
        }
      },
      "type": "object",
      "required": [
        "sourceId",
        "sourceParentId",
        "destId",
        "destParentId"
      ],
      "title": "PortColumnFlowEdgeView",
      "description": "One dataset-boundary PORT_FLOW edge (ADR-2c23c57d, FOU-15095): a data flow between a Port or\none of its Fields and a dataset or one of its columns, which makes the operation a visible hop\nin lineage. Whole-value flows use the Port and dataset themselves; granular flows use their\ncontained Field and column entities.\n\nA source→dest pair like every other served edge — the direction is the edge (ADR-226d3631), so data\nflows from the source endpoint to the dest endpoint. Exactly one end belongs to the port side\n(a Port or Field) and the other belongs to the dataset side (a dataset or column), in whichever\norder the flow runs. Which end is which is read off the parent ids rather than stated\nseparately, so the two can never disagree.\n\nEach end carries its owning canvas entity because the client cannot resolve it: a Field names\nits Port, a column names its dataset, and a whole-value Port or dataset names itself. Those\nowners are what the edge is drawn between — how deep each end anchors within its node is a\nrender decision, left to the client.\n\nPORT_FLOW's other shape — the port→port arg/return flow between two operations — is\n:class:`PortFlowEdgeView`, served separately because both of its ends are ports."
    },
    "PortFlowEdgeView": {
      "properties": {
        "sourcePortId": {
          "type": "string",
          "title": "Sourceportid",
          "description": "The source port's entity id (a RETURN / output port)"
        },
        "destPortId": {
          "type": "string",
          "title": "Destportid",
          "description": "The dest port's entity id (a PARAM / PAYLOAD input port)"
        },
        "sourceFieldId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourcefieldid",
          "description": "The concrete source Field, when field-granular"
        },
        "destFieldId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Destfieldid",
          "description": "The concrete destination Field, when field-granular"
        },
        "transformations": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Transformations",
          "description": "Expressions applied along this flow"
        },
        "runIds": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Runids",
          "description": "Static extraction runs that resolved this flow"
        },
        "conditional": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditional",
          "description": "Whether this flow is branch-conditional, when known"
        },
        "conditionExpr": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditionexpr",
          "description": "Resolved branch predicate, when available"
        },
        "callSiteKeys": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Callsitekeys",
          "description": "Source sites that established this flow"
        },
        "conditionExprs": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Conditionexprs",
          "description": "All predicates observed for this flow"
        },
        "paramBindings": {
          "items": {
            "$ref": "#/$defs/APIParamBinding"
          },
          "type": "array",
          "title": "Parambindings",
          "description": "The resolved invocation bindings on this edge (design 01 §3.1)"
        },
        "portFlowEvidence": {
          "items": {
            "$ref": "#/$defs/APIPortFlowEvidence"
          },
          "type": "array",
          "title": "Portflowevidence",
          "description": "Paired call-site and predicate evidence, including explicit empty unconditional entries"
        }
      },
      "type": "object",
      "required": [
        "sourcePortId",
        "destPortId"
      ],
      "title": "PortFlowEdgeView",
      "description": "One PORT_FLOW edge (design 01 §3, ADR-96f314e8): a port→port arg/return data flow, carrying the\nper-caller invocation ``ParamBindings`` resolved on it. Modeled on :class:`TriggerEdgeView` —\nthe port-topology + bindings the frontend anchors to per-port handles and shows in the inspector."
    },
    "PowerPlatformDataflowEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "power_platform_dataflow",
          "title": "Entitytype",
          "default": "power_platform_dataflow"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "platform": {
          "$ref": "#/$defs/PowerPlatformPlatform",
          "default": "POWER_PLATFORM"
        },
        "workspaceId": {
          "type": "string",
          "title": "Workspaceid"
        },
        "dataflowId": {
          "type": "string",
          "title": "Dataflowid"
        },
        "dataflowEntityName": {
          "type": "string",
          "title": "Dataflowentityname"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "workspaceId",
        "dataflowId",
        "dataflowEntityName"
      ],
      "title": "PowerPlatformDataflowEntity"
    },
    "PowerPlatformPlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "POWER_PLATFORM"
      ],
      "title": "PowerPlatformPlatform"
    },
    "PublicEntityOwner": {
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Name",
          "description": "The name of the entity owner"
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Email",
          "description": "The email of the entity owner"
        },
        "inheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/APILocationRef"
            },
            {
              "type": "null"
            }
          ],
          "description": "The ancestor (a container, or a column's table) the owner is set on; null when the owner is set on the entity itself"
        }
      },
      "type": "object",
      "title": "PublicEntityOwner"
    },
    "RepositorySourcePointer": {
      "properties": {
        "type": {
          "type": "string",
          "const": "repository",
          "title": "Type",
          "default": "repository"
        },
        "repoPlatform": {
          "$ref": "#/$defs/SourceControlPlatform"
        },
        "repoName": {
          "type": "string",
          "title": "Reponame"
        },
        "commitHash": {
          "type": "string",
          "title": "Commithash"
        },
        "repoFilePath": {
          "type": "string",
          "title": "Repofilepath"
        },
        "url": {
          "type": "string",
          "title": "Url"
        }
      },
      "type": "object",
      "required": [
        "repoPlatform",
        "repoName",
        "commitHash",
        "repoFilePath",
        "url"
      ],
      "title": "RepositorySourcePointer",
      "description": "Pointer to a source-code file on git repository."
    },
    "RunOutcome": {
      "type": "string",
      "enum": [
        "succeeded",
        "failed",
        "running",
        "unknown"
      ],
      "title": "RunOutcome",
      "description": "How a run ended, as far as its served status says."
    },
    "SalesforcePlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "SALESFORCE"
      ],
      "title": "SalesforcePlatform"
    },
    "SalesforceResourceEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "salesforce_resource",
          "title": "Entitytype",
          "default": "salesforce_resource"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "resourceName": {
          "type": "string",
          "title": "Resourcename"
        },
        "loginUrl": {
          "type": "string",
          "title": "Loginurl"
        },
        "apiVersion": {
          "type": "string",
          "title": "Apiversion"
        },
        "resourceType": {
          "$ref": "#/$defs/SalesforceResourceType"
        },
        "platform": {
          "$ref": "#/$defs/SalesforcePlatform",
          "default": "SALESFORCE"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "resourceName",
        "loginUrl",
        "apiVersion",
        "resourceType"
      ],
      "title": "SalesforceResourceEntity"
    },
    "SalesforceResourceType": {
      "type": "string",
      "enum": [
        "Unknown",
        "DATA",
        "REPORT"
      ],
      "title": "SalesforceResourceType"
    },
    "SensitivityOrigin": {
      "properties": {
        "entityId": {
          "type": "string",
          "title": "Entityid"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityName"
      ],
      "title": "SensitivityOrigin",
      "description": "An upstream entity an inferred sensitivity source was propagated from."
    },
    "SensitivitySource": {
      "properties": {
        "level": {
          "$ref": "#/$defs/DataSensitivityLevel"
        },
        "dataClasses": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Dataclasses"
        },
        "platform": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Platform"
        },
        "inferredFrom": {
          "items": {
            "$ref": "#/$defs/SensitivityOrigin"
          },
          "type": "array",
          "title": "Inferredfrom"
        },
        "lastScanned": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time"
            },
            {
              "type": "null"
            }
          ],
          "title": "Lastscanned"
        }
      },
      "type": "object",
      "required": [
        "level",
        "dataClasses",
        "platform",
        "inferredFrom",
        "lastScanned"
      ],
      "title": "SensitivitySource",
      "description": "One classification of an entity: by a platform (e.g. Cyera), or inferred from lineage."
    },
    "SourceControlPlatform": {
      "type": "string",
      "enum": [
        "github",
        "github_enterprise",
        "gitlab",
        "bitbucket",
        "azure_repos"
      ],
      "title": "SourceControlPlatform"
    },
    "SpreadsheetEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "spreadsheet",
          "title": "Entitytype",
          "default": "spreadsheet"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "uri": {
          "type": "string",
          "title": "Uri"
        },
        "platform": {
          "$ref": "#/$defs/SpreadsheetPlatform"
        },
        "storagePlatform": {
          "$ref": "#/$defs/SpreadsheetStoragePlatform"
        },
        "sheetName": {
          "type": "string",
          "title": "Sheetname"
        },
        "sheetId": {
          "type": "string",
          "title": "Sheetid"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "uri",
        "platform",
        "storagePlatform",
        "sheetName",
        "sheetId"
      ],
      "title": "SpreadsheetEntity"
    },
    "SpreadsheetPlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "GOOGLE_SHEETS",
        "EXCEL"
      ],
      "title": "SpreadsheetPlatform"
    },
    "SpreadsheetStoragePlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "GOOGLE_DRIVE",
        "ONE_DRIVE"
      ],
      "title": "SpreadsheetStoragePlatform"
    },
    "StoragePlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "S3",
        "HDFS",
        "LOCAL",
        "GCS",
        "API",
        "AI",
        "APPLICATION",
        "MAINFRAME",
        "FTP",
        "SFTP",
        "AZURE_BLOB_STORAGE",
        "AZURE_DATA_LAKE",
        "INFORMATICA"
      ],
      "title": "StoragePlatform"
    },
    "StreamEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "stream",
          "title": "Entitytype",
          "default": "stream"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "streamName": {
          "type": "string",
          "title": "Streamname"
        },
        "platform": {
          "$ref": "#/$defs/StreamPlatform"
        },
        "serverUri": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Serveruri"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "streamName",
        "platform"
      ],
      "title": "StreamEntity"
    },
    "StreamPlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "KAFKA",
        "FLINK",
        "GOOGLE_PUBSUB",
        "BIGQUEUE",
        "JMS",
        "MQSERIES",
        "VERTX_EVENTBUS"
      ],
      "title": "StreamPlatform"
    },
    "TableEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "enum": [
            "table",
            "view"
          ],
          "title": "Entitytype",
          "default": "table"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "dbName": {
          "type": "string",
          "title": "Dbname"
        },
        "schemaName": {
          "type": "string",
          "title": "Schemaname"
        },
        "platform": {
          "$ref": "#/$defs/TablePlatform"
        },
        "metadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/TableMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Url"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "dbName",
        "schemaName",
        "platform"
      ],
      "title": "TableEntity"
    },
    "TableMetadata": {
      "properties": {
        "labels": {
          "anyOf": [
            {
              "additionalProperties": {
                "type": "string"
              },
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "title": "Labels"
        },
        "materialization": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Materialization"
        },
        "dbtTags": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Dbttags"
        },
        "url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Url"
        }
      },
      "type": "object",
      "title": "TableMetadata"
    },
    "TablePlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "BIGQUERY",
        "SNOWFLAKE",
        "POSTGRES",
        "HIVE",
        "POWER_BI",
        "TABLEAU",
        "LOOKER",
        "DATABRICKS",
        "SQL_SERVER",
        "MODE_ANALYTICS",
        "MYSQL",
        "MSSQL",
        "SISENSE",
        "REDSHIFT",
        "ORACLE",
        "ORACLE_DB",
        "LOOKER_STUDIO",
        "SYNAPSE",
        "SIGMA",
        "S3",
        "HDFS",
        "MONGO_DB",
        "ATHENA",
        "PRESTO",
        "TDV",
        "SAP_HANA",
        "SAP_ECC",
        "INFORMATICA",
        "TALEND",
        "HEX",
        "THOUGHTSPOT",
        "NETEZZA",
        "TERADATA",
        "DB2",
        "ODBC",
        "SQS",
        "KINESIS",
        "ICEBERG",
        "REDIS",
        "COUCHBASE",
        "SOLR",
        "MARKETO",
        "DYNAMICS",
        "SPOTFIRE"
      ],
      "title": "TablePlatform"
    },
    "TransformConditionGate": {
      "properties": {
        "conditionNodeId": {
          "type": "string",
          "title": "Conditionnodeid"
        },
        "value": {
          "type": "boolean",
          "title": "Value"
        }
      },
      "type": "object",
      "required": [
        "conditionNodeId",
        "value"
      ],
      "title": "TransformConditionGate"
    },
    "TransformEdge": {
      "properties": {
        "fromNodeIds": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Fromnodeids"
        },
        "toNodeId": {
          "type": "string",
          "title": "Tonodeid"
        },
        "operation": {
          "$ref": "#/$defs/TransformOperation"
        },
        "guard": {
          "anyOf": [
            {
              "$ref": "#/$defs/TransformConditionGate"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "toNodeId",
        "operation"
      ],
      "title": "TransformEdge"
    },
    "TransformGraph": {
      "properties": {
        "nodes": {
          "items": {
            "$ref": "#/$defs/TransformNode"
          },
          "type": "array",
          "title": "Nodes"
        },
        "edges": {
          "items": {
            "$ref": "#/$defs/TransformEdge"
          },
          "type": "array",
          "title": "Edges"
        },
        "sourceNodeIds": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Sourcenodeids"
        },
        "sinkNodeId": {
          "type": "string",
          "title": "Sinknodeid",
          "default": ""
        }
      },
      "type": "object",
      "title": "TransformGraph"
    },
    "TransformNode": {
      "properties": {
        "nodeId": {
          "type": "string",
          "title": "Nodeid"
        },
        "kind": {
          "anyOf": [
            {
              "$ref": "#/$defs/TransformNodeKind"
            },
            {
              "type": "null"
            }
          ]
        },
        "columnRef": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Columnref"
        },
        "literalValue": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Literalvalue"
        },
        "dataType": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datatype"
        },
        "expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Expression"
        },
        "conditionText": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditiontext"
        },
        "conditionSourceLine": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditionsourceline"
        },
        "conditionSourceLineText": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Conditionsourcelinetext"
        },
        "requires": {
          "items": {
            "$ref": "#/$defs/TransformConditionGate"
          },
          "type": "array",
          "title": "Requires"
        }
      },
      "type": "object",
      "required": [
        "nodeId"
      ],
      "title": "TransformNode"
    },
    "TransformNodeKind": {
      "type": "string",
      "enum": [
        "source",
        "literal",
        "intermediate",
        "condition",
        "sink"
      ],
      "title": "TransformNodeKind"
    },
    "TransformOperation": {
      "properties": {
        "opType": {
          "anyOf": [
            {
              "$ref": "#/$defs/TransformOperationType"
            },
            {
              "type": "null"
            }
          ]
        },
        "expression": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Expression"
        },
        "method": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Method"
        },
        "renameFrom": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Renamefrom"
        },
        "renameTo": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Renameto"
        },
        "castToType": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Casttotype"
        },
        "sourceLine": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceline"
        },
        "sourceFile": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourcefile"
        },
        "sourceLineText": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourcelinetext"
        }
      },
      "type": "object",
      "title": "TransformOperation"
    },
    "TransformOperationType": {
      "type": "string",
      "enum": [
        "select",
        "drop",
        "rename",
        "add_column",
        "filter",
        "aggregate",
        "join",
        "sort",
        "distinct",
        "deduplicate",
        "fill_null",
        "drop_null",
        "cast",
        "melt",
        "pivot",
        "apply",
        "map",
        "limit",
        "sample",
        "union",
        "rename_columns",
        "expression"
      ],
      "title": "TransformOperationType"
    },
    "URLSourcePointer": {
      "properties": {
        "type": {
          "type": "string",
          "const": "url",
          "title": "Type",
          "default": "url"
        },
        "url": {
          "type": "string",
          "title": "Url"
        }
      },
      "type": "object",
      "required": [
        "url"
      ],
      "title": "URLSourcePointer",
      "description": "Pointer to a web-resource or a file on an external system."
    },
    "VisualizationPlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "TABLEAU",
        "LOOKER",
        "POWER_BI",
        "SIGMA",
        "MODE_ANALYTICS",
        "SISENSE",
        "LOOKER_STUDIO",
        "TDV",
        "HEX",
        "SPOTFIRE",
        "DATABRICKS",
        "THOUGHTSPOT"
      ],
      "title": "VisualizationPlatform"
    },
    "WarehouseTaskEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "warehouse_task",
          "title": "Entitytype",
          "default": "warehouse_task"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "dbName": {
          "type": "string",
          "title": "Dbname"
        },
        "schemaName": {
          "type": "string",
          "title": "Schemaname"
        },
        "platform": {
          "$ref": "#/$defs/TablePlatform"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "dbName",
        "schemaName",
        "platform"
      ],
      "title": "WarehouseTaskEntity"
    },
    "WebResourceEntity": {
      "properties": {
        "id": {
          "type": "string",
          "title": "Id"
        },
        "entityType": {
          "type": "string",
          "const": "web_resource",
          "title": "Entitytype",
          "default": "web_resource"
        },
        "entityName": {
          "type": "string",
          "title": "Entityname"
        },
        "aliases": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Aliases",
          "default": []
        },
        "parentId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Parentid"
        },
        "datasetId": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datasetid"
        },
        "sourceConnectors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/EntitySourceDetails"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sourceconnectors"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ColumnEntity"
          },
          "type": "array",
          "title": "Children",
          "default": []
        },
        "changeDescriptor": {
          "anyOf": [
            {
              "$ref": "#/$defs/ChangeDescriptor"
            },
            {
              "type": "null"
            }
          ]
        },
        "hasModifiedUpstream": {
          "type": "boolean",
          "title": "Hasmodifiedupstream",
          "default": false
        },
        "baseMetadata": {
          "anyOf": [
            {
              "$ref": "#/$defs/BaseEntityMetadata"
            },
            {
              "type": "null"
            }
          ]
        },
        "issueState": {
          "anyOf": [
            {
              "$ref": "#/$defs/EntityIssueState"
            },
            {
              "type": "null"
            }
          ]
        },
        "dataSensitivity": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataSensitivity"
            },
            {
              "type": "null"
            }
          ]
        },
        "certification": {
          "anyOf": [
            {
              "$ref": "#/$defs/DatasetCertification"
            },
            {
              "type": "null"
            }
          ]
        },
        "certificationInheritedFrom": {
          "anyOf": [
            {
              "$ref": "#/$defs/LocationRef"
            },
            {
              "type": "null"
            }
          ]
        },
        "childrenCount": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrencount"
        },
        "childrenTruncated": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Childrentruncated"
        },
        "locationAncestors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/LocationAncestor"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Locationancestors"
        },
        "url": {
          "type": "string",
          "title": "Url"
        },
        "webResourceFormat": {
          "$ref": "#/$defs/WebResourceFormat"
        },
        "platform": {
          "$ref": "#/$defs/WebResourcePlatform",
          "default": "WEB"
        }
      },
      "type": "object",
      "required": [
        "id",
        "entityName",
        "url",
        "webResourceFormat"
      ],
      "title": "WebResourceEntity"
    },
    "WebResourceFormat": {
      "type": "string",
      "enum": [
        "Unknown",
        "JSON",
        "CSV",
        "HTML",
        "SHAREPOINT"
      ],
      "title": "WebResourceFormat"
    },
    "WebResourcePlatform": {
      "type": "string",
      "enum": [
        "Unknown",
        "WEB"
      ],
      "title": "WebResourcePlatform"
    }
  }
}