NAV
yaml

OPEN DATA PRODUCT GRAPHS - The Linux Foundation

Version DRAFT

The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in BCP 14 (RFC 2119 and RFC 8174) when, and only when, they appear in all capitals, as shown here.

The specification is shared under Apache 2.0 license. Development of the specification is under the umbrella of the Linux Foundation.

Topic Link Description
Version source Open Data Product Graphs 1.0 on GitHub Official source repository for the ODPG 1.0 specification
Contribute Raise an issue in GitHub Submit issues or suggestions to the specification maintainers

Introduction

Modern organizations increasingly operate across highly distributed ecosystems composed of data products, APIs, workflows, governance controls, AI systems, analytical capabilities, business domains, and operational processes that collectively contribute to strategic business execution. Despite significant investments in data platforms and governance programs, many organizations still struggle to understand how technical assets connect to business value because metadata, governance, strategy, and operational context are often managed independently from one another.

Traditional metadata catalogs primarily focus on technical discovery, indexing, and lineage management, which makes them valuable for inventory and governance use cases but insufficient for understanding the broader strategic relationships that exist between business objectives, operational capabilities, AI systems, data products, and measurable outcomes.

Open Data Product Graphs ODPG-v1.0 addresses this challenge by introducing a machine-readable graph specification that enables organizations to describe and manage the relationships between interconnected entities across the enterprise ecosystem, thereby transforming isolated specifications into connected intelligence structures capable of supporting governance reasoning, strategic alignment, semantic interoperability, AI traversal, impact analysis, and reusable data ecosystems.

Through ODPG, organizations can represent questions such as:

By enabling organizations to describe these relationships using a standardized graph structure, ODPG provides the foundation for graph-native enterprise intelligence ecosystems.

Relationship to the Open Data Products Specification Family

The Open Data Products specification family consists of interoperable standards that collectively support the lifecycle, governance, semantics, discovery, interoperability, and intelligence of data ecosystems, where each specification focuses on a specific responsibility while remaining interoperable with the others.

Open Data Product Graphs overview diagram

Specification Role
ODPS Defines the structure and specification of a data product
ODPV Defines shared vocabulary and semantic meaning
ODPC Defines catalog interoperability and discovery structures
ODPG Defines graph relationships between data products, use cases, objectives, policies, and related entities

Within this ecosystem, ODPS defines the product structure itself, ODPV defines semantic consistency and shared meaning, ODPC defines discovery and catalog interoperability, while ODPG defines the graph relationships that connect those specifications into an interconnected enterprise ecosystem capable of supporting strategic intelligence and machine reasoning.

As a result, ODPG should be understood as the relationship and intelligence layer of the Open Data Products ecosystem because it provides the contextual structure necessary for understanding how different enterprise assets connect to each other operationally, strategically, semantically, and organizationally.

Purpose

The purpose of ODPG is to provide organizations with a standardized machine-readable graph specification that enables them to model relationships between data products, business objectives, operational use cases, governance structures, APIs, workflows, AI systems, and strategic capabilities in a consistent and interoperable manner.

Through this graph model, organizations can establish visibility into how data products contribute to business outcomes, how governance policies propagate across interconnected assets, how AI agents interact with enterprise systems, how KPIs align with strategic goals, and how operational dependencies affect downstream capabilities.

ODPG therefore enables organizations to:

Graph Toolkit

Snippet of YAML version:

schema: https://opendataproducts.org/odpg-v1.0/schema/odpg.yaml
version: "1.0"
kind: Graph
graph:
  metadata:
    id: GRAPH-AVIATION-001
    name:
      en: Aviation Data Product Value Graph
    description:
      en: Graph describing how aviation data products, use cases, policies,
          agents, opportunities, and business objectives are connected.
    domain:
      en: Aviation
    purpose:
      en: Support portfolio analysis, value mapping, governance review,
          and AI-assisted reasoning.
    status: draft
    visibility: public
  nodes: []
  edges: []

ODPG is published in several forms for different users and tools. This specification provides the human-readable documentation, while the schema, graph object records, and generator script provide machine-readable resources for validation, graph reasoning, AI retrieval, traversal planning, and automation. Use odpg.yaml or odpg.json to validate graph files, objects.jsonl for lightweight relationship classification and graph retrieval, and the Graph Explorer generator when creating a visual inspection interface for ODPG YAML.

Resource Format Purpose
llms.txt Text AI agent guidance for discovering and using ODPG resources
odpg.yaml YAML Schema YAML representation of the ODPG validation schema
odpg.json JSON Schema JSON representation of the ODPG validation schema
objects.jsonl JSONL Agent-friendly one-object-per-line file for retrieval, relationship classification, traversal planning, graph reasoning, and lightweight tools

The Markdown tables in this specification are intended for human readers. The schema, JSONL, and graph tooling files are intended for programmable use, automation, validation, AI retrieval, traversal, reasoning, and graph visualization.

Specification Structure

Example of details object usage:

schema: https://opendataproducts.org/odpg-v1.0/schema/odpg.yaml
version: 1.0
kind: Graph
graph:
  metadata:
    id: GRAPH-AVIATION-001
    name:
      en: Aviation Data Product Value Graph
    description:
      en: Graph describing how aviation data products, use cases, policies, agents, opportunities, and business objectives are connected.
  nodes: []
  edges: []

An ODPG document consists of a standardized graph structure composed of metadata, graph nodes, and graph edges, where the graph itself represents a connected ecosystem of business, operational, technical, governance, and AI-related entities.

The root structure of an ODPG document is defined as follows:

Mandatory attributes

The following root properties are defined within an ODPG document.

Property Type Required Description
schema URL Yes URL of the ODPG schema used for validation
version String or number Yes Version of the ODPG specification
kind String Yes Type of graph specification document. Must be Graph
graph Object Yes Container for graph metadata, nodes, and edges
metadata Object Yes Metadata describing the graph
metadata.id String Yes Unique identifier of the graph
metadata.name Object Yes Human-readable graph name using language-specific values
metadata.name.en String Yes English name of the graph.
metadata.description Object Yes Human-readable graph description using language-specific values
metadata.description.en String Yes English description of the graph.
nodes Array of node objects Yes Collection of graph node objects
edges Array of edge objects Yes Collection of graph edge objects

Optional attributes and options

Example of catalog metadata usage:

schema: https://opendataproducts.org/odpg-v1.0/schema/odpg.yaml
version: 1.0
kind: Graph
graph:
  metadata:
    id: GRAPH-AVIATION-001
    name:
      en: Aviation Data Product Value Graph
    description:
      en: Graph describing how aviation data products, use cases, policies, agents, opportunities, and business objectives are connected.
    domain:
      en: Aviation
    purpose:
      en: Support portfolio analysis, value mapping, governance review, and AI-assisted reasoning.
    tags:
      - aviation
      - predictive-maintenance
      - fleet-availability
    status: draft
    visibility: public
    owner:
      name: Aviation Data Product Team
      email: aviation-data-products@example.com
  nodes: []
  edges: []
Attribute Type Description
metadata.domain Object Business, industry, or subject domain covered by the graph. Supports language-specific values.
metadata.domain.en String English domain name.
metadata.purpose Object Explanation of why the graph exists and how it should be used. Supports language-specific values.
metadata.purpose.en String English purpose statement.
metadata.tags Array of strings Keywords used for discovery, filtering, grouping, and search.
metadata.status String Current status of the graph. Recommended values include draft, active, deprecated, and archived.
metadata.visibility String Intended visibility of the graph. Recommended values include public, internal, restricted, and private.
metadata.owner Object Party responsible for the graph.
metadata.owner.name String Name of the owning person, team, or organization.
metadata.owner.email String Contact email for the owning party.

Graph Catalog

Example of the catalog object usage:

schema: https://opendataproducts.org/odpg-v1.0/schema/odpg.yaml
version: 1.0
kind: Graph
graph:
  metadata:
    id: GRAPH-AVIATION-001
    name:
      en: Aviation Data Product Value Graph
    description:
      en: Graph describing how aviation data products, use cases, policies, agents, opportunities, and business objectives are connected.
    domain:
      en: Aviation
    purpose:
      en: Support portfolio analysis, value mapping, governance review, and AI-assisted reasoning.
    tags:
      - aviation
      - predictive-maintenance
      - fleet-availability
    status: draft
    visibility: public
    owner:
      name: Aviation Data Product Team
      email: aviation-data-products@example.com

  nodes:
    - id: UC-AVIATION-001
      type: UseCase
      $ref: ../usecases/predictive-maintenance-aircraft.yaml

    - id: OBJ-AVIATION-001
      type: BusinessObjective
      $ref: ../objectives/increase-fleet-availability.yaml

    - id: KPI-AVIATION-001
      type: KPI
      $ref: ../kpis/fleet-availability-rate.yaml

    - id: DP-AVIATION-001
      type: DataProduct
      $ref: ../products/aircraft-maintenance-history.yaml

    - id: DP-AVIATION-002
      type: DataProduct
      $ref: ../products/aircraft-sensor-events.yaml

    - id: API-AVIATION-001
      type: API
      $ref: ../apis/maintenance-risk-score-api.yaml

    - id: POL-AVIATION-001
      type: Policy
      $ref: ../policies/aviation-data-quality-policy.yaml

    - id: AGENT-AVIATION-001
      type: Agent
      $ref: ../agents/maintenance-recommendation-agent.yaml

    - id: OPP-AVIATION-001
      type: StrategicOpportunity
      $ref: ../opportunities/reduce-unscheduled-maintenance.yaml

  edges:
    - from: UC-AVIATION-001
      to: DP-AVIATION-001
      type: uses
      confidence: high

    - from: UC-AVIATION-001
      to: DP-AVIATION-002
      type: uses
      confidence: high

    - from: UC-AVIATION-001
      to: OBJ-AVIATION-001
      type: supports
      confidence: high

    - from: DP-AVIATION-001
      to: OBJ-AVIATION-001
      type: contributesTo
      confidence: medium

    - from: DP-AVIATION-002
      to: OBJ-AVIATION-001
      type: contributesTo
      confidence: medium

    - from: KPI-AVIATION-001
      to: OBJ-AVIATION-001
      type: measures
      confidence: high

    - from: DP-AVIATION-001
      to: KPI-AVIATION-001
      type: tracks
      confidence: medium

    - from: DP-AVIATION-001
      to: API-AVIATION-001
      type: exposes
      confidence: high

    - from: DP-AVIATION-001
      to: POL-AVIATION-001
      type: governedBy
      confidence: high

    - from: AGENT-AVIATION-001
      to: DP-AVIATION-001
      type: uses
      confidence: high

    - from: AGENT-AVIATION-001
      to: API-AVIATION-001
      type: uses
      confidence: high

    - from: UC-AVIATION-001
      to: OPP-AVIATION-001
      type: identifies
      confidence: medium

    - from: OPP-AVIATION-001
      to: OBJ-AVIATION-001
      type: alignWith
      confidence: medium

The following example demonstrates a complete ODPG document connecting use cases, business objectives, KPIs, data products, governance policies, APIs, AI agents, and strategic opportunities into a unified value graph.

Aviation Data Product Value Graph

Graph Explorer Example

The following YAML example can also be used as the input for a lightweight Graph Explorer generator capable of transforming an ODPG document into an interactive HTML-based visualization. This allows organizations to convert machine-readable graph specifications into human-readable graph catalogs that can be explored visually through a browser without requiring a dedicated graph database or enterprise catalog platform.

The Graph Explorer concept is intended to demonstrate how ODPG files can serve as portable relationship intelligence structures that support governance review, strategic planning, semantic exploration, AI-agent traversal, and operational dependency analysis through standard graph visualization techniques.

A Graph Explorer implementation typically performs the following sequence of operations:

Reads the ODPG YAML file. Validates the graph structure against the ODPG schema. Extracts graph nodes and graph edges. Converts the graph into a visualization-friendly structure. Generates an interactive HTML page capable of displaying graph relationships. Enables users to inspect node metadata, edge relationships, confidence levels, and referenced specifications.

The Graph Explorer may display:

as graph nodes, while relationships such as:

can be rendered as directional graph edges.

Purpose of the Graph Explorer

The purpose of the Graph Explorer is to provide a simple and portable way to inspect ODPG files visually. While ODPG is designed as a machine-readable specification, humans also need a practical way to understand how use cases, data products, objectives, policies, APIs, agents, and strategic opportunities are connected.

The Graph Explorer supports this need by converting the ODPG YAML structure into an interactive HTML page where users can inspect graph relationships, understand dependency paths, review contribution chains, and validate whether the graph communicates the intended business and governance context.

Python Graph Explorer Generator

A lightweight Python utility can be used to transform an ODPG YAML document into a standalone HTML Graph Explorer.

The purpose of the script is not to redefine the ODPG structure, but rather to consume the existing specification and render it visually.

The script should:

The script should use the standard ODPG structure exactly as defined in this specification.

Required Dependencies & Execution

The Python implementation requires PyYAML for parsing ODPG YAML files.

1- See all options (built-in help)

python generate_graph_explorer.py --help
You should see `-i` / `--input` and `-o` / `--output` with their defaults.

2- Run this line to generate the Graph Explorer

python generate_graph_explorer.py -i "/path/to/graph.yml" -o "/path/to/explorer.html"
Script Purpose
generate_graph_explorer.py Transform the graph yaml file into HTML file

The script read the graph.yaml file and generates graph-explorer.html file. The resulting HTML file can then be opened directly in a browser to explore the ODPG graph visually.

Quick reference

Flag Meaning
-i PATH or --input PATH ODPG graph YAML file to read
-o PATH or --output PATH HTML file to write
-h or --help Show help and defaults

Defaults: if you omit -i, the script uses graph.yaml in the same directory as generate_graph_explorer.py. If you omit -o, it writes graph-explorer.html in the current working directory.

Graph Explorer Capabilities

A generated Graph Explorer implementation may support:

The Graph Explorer demonstrates how ODPG specifications can become both machine-readable and human-navigable while preserving interoperability with the broader Open Data Products ecosystem.

Aviation Data Product Graph Explorer

Open the Graph Explorer example

Nodes

Example of nodes object format:

nodes:
  - id: UC-AVIATION-001
    type: UseCase
    $ref: ../usecases/predictive-maintenance-aircraft.yaml

  - id: OBJ-AVIATION-001
    type: BusinessObjective
    $ref: ../objectives/increase-fleet-availability.yaml

  - id: DP-AVIATION-001
    type: DataProduct
    $ref: ../products/aircraft-maintenance-history.yaml

The nodes section defines the entities included within the graph, where each node represents a resource, capability, objective, policy, product, workflow, dataset, or system participating in the ecosystem being modeled.

A node may represent an internal resource defined directly within the organization or an external specification referenced through another machine-readable file.

Instead of embedding full resource definitions directly into the graph, ODPG encourages interoperability through references using the ref property, thereby enabling organizations to connect graph structures with ODPS documents, ODPV vocabularies, governance artifacts, APIs, workflows, use cases, or external specifications.

Node Properties

Each node within an ODPG document represents a distinct entity participating in the graph ecosystem, where the node itself serves as the graph reference point that enables relationships, dependencies, semantic mappings, governance propagation, strategic alignment, and interoperability across connected specifications and platforms.

The following properties are defined for graph nodes.

Property Type Required Description
id String Yes Unique identifier of the node
type String Yes Type of graph entity represented by the node
$ref String Yes Path or URI to the referenced specification or resource

The id property uniquely identifies the node within the graph and allows edges to establish relationships between connected entities.

The type property identifies the category of entity represented by the node, thereby enabling graph consumers, validation systems, governance engines, AI agents, and traversal engines to interpret the role of the entity correctly.

The $ref property provides a path or URI reference to the underlying specification, thereby allowing ODPG to function as a lightweight relationship layer that interoperates with external specifications such as ODPS documents, governance definitions, API specifications, vocabulary definitions, use case files, or objective specifications.

Supported Node Types

ODPG supports multiple node types capable of representing strategic, operational, governance, semantic, and AI-related entities across enterprise ecosystems.

Node Type Description
DataProduct A data product defined using ODPS or compatible structures
UseCase A business, analytical, operational, or AI-related use case
BusinessObjective A strategic business objective or organizational goal
KPI A measurable business or operational indicator
Domain A business, organizational, technical, or data domain
Dataset A structured or unstructured dataset
API A service interface exposed or consumed by a data product
Policy A governance, compliance, security, or quality policy
Workflow A business or technical workflow
Agent An AI agent or automation actor
Capability A business or technical capability
StrategicOpportunity An inferred or declared strategic opportunity

The node model is intentionally extensible so that organizations can expand graph structures with additional node types while preserving interoperability with the core ODPG structure.

Edges

Example of edges object usage:

edges:
  - from: UC-AVIATION-001
    to: DP-AVIATION-001
    type: uses
    confidence: high

  - from: UC-AVIATION-001
    to: OBJ-AVIATION-001
    type: supports
    confidence: high

  - from: DP-AVIATION-001
    to: OBJ-AVIATION-001
    type: contributesTo
    confidence: medium

The edges section defines the relationships between nodes, where each edge establishes a directional connection that represents strategic alignment, operational dependency, semantic association, governance propagation, usage patterns, contribution paths, ownership relationships, or interoperability mappings between entities.

An edge always connects a source node to a target node using the from and to properties.

Through edges, ODPG enables organizations to construct connected value graphs capable of supporting strategic analysis, governance reasoning, graph traversal, semantic interoperability, dependency analysis, and AI-driven contextual reasoning.

Edge Properties

Each edge within an ODPG graph contains properties that describe the relationship connecting two nodes.

Property Type Required Description
from String Yes Source node identifier
to String Yes Target node identifier
type String Yes Relationship type
confidence String Yes Confidence level of the relationship

The from property identifies the source node from which the relationship originates.

The to property identifies the destination node receiving the relationship.

The type property defines the semantic meaning of the relationship.

The confidence property defines the certainty level associated with the relationship, thereby enabling organizations and AI systems to distinguish between explicitly declared relationships and inferred or partially validated relationships.

Supported Edge Types

ODPG supports multiple relationship types capable of representing operational, strategic, governance, semantic, and AI-related connections between graph entities.

Edge Type Description
uses A node uses another node as part of execution or operation
supports A node supports a business objective
contributesTo A node contributes toward an outcome or objective
measures A KPI measures an objective or outcome
tracks A node tracks or provides KPI-related information
dependsOn A node depends on another node
produces A node produces data, outputs, or services
consumes A node consumes data, APIs, or outputs
governedBy A node is governed by a policy or control
ownedBy A node is owned by a person, team, or domain
alignsWith A node aligns strategically or semantically with another node
relatedTo A generic semantic relationship
impacts A node impacts another node
derivedFrom A node originates from another node
exposes A node exposes an API or interface
monitors A node monitors another node
identifies A node identifies an opportunity or condition

The relationship model is designed to remain extensible so that organizations can introduce domain-specific relationship types while maintaining compatibility with the core ODPG graph structure.

Confidence

Example of YAML formated:

confidence: high

The confidence property represents the certainty level associated with a graph relationship and allows organizations to distinguish between relationships that are explicitly declared, relationships that are inferred through analysis, and relationships that require additional validation or human review.

Recommended confidence values are defined below.

Value Description
high Relationship is explicitly declared or confirmed
medium Relationship is partially validated or inferred with moderate certainty
low Relationship is inferred and requires additional validation

Strategic Intelligence

Example of Strategic opportunities type:

nodes:
  - id: OPP-AVIATION-001
    type: StrategicOpportunity
    $ref: ../opportunities/reduce-unscheduled-maintenance.yaml

edges:
  - from: UC-AVIATION-001
    to: OPP-AVIATION-001
    type: identifies
    confidence: medium

  - from: OPP-AVIATION-001
    to: OBJ-AVIATION-001
    type: alignsWith
    confidence: medium

ODPG introduces a graph-native intelligence layer capable of connecting business objectives, operational use cases, KPIs, governance structures, data products, and AI systems into a unified strategic reasoning model that enables organizations to understand not only what assets exist, but also how those assets contribute to measurable business outcomes and organizational priorities.

Through graph relationships, organizations can identify:

unlinked high-priority use cases unsupported strategic objectives duplicated operational initiatives overlapping capabilities orphan KPIs governance gaps reusable product ecosystems strategic opportunities emerging across multiple connected entities

Strategic opportunities may emerge when several use cases, KPIs, domains, or data products collectively indicate an unmet organizational need or a common optimization target.

Through this structure, ODPG enables organizations to move from isolated metadata management toward interconnected strategic intelligence ecosystems.

Governance and Trust

nodes:
  - id: DP-AVIATION-001
    type: DataProduct
    $ref: ../products/aircraft-maintenance-history.yaml

  - id: POL-AVIATION-001
    type: Policy
    $ref: ../policies/aviation-data-quality-policy.yaml

edges:
  - from: DP-AVIATION-001
    to: POL-AVIATION-001
    type: governedBy
    confidence: high

ODPG supports governance propagation by enabling organizations to connect policies, controls, ownership structures, quality requirements, stewardship responsibilities, and compliance expectations directly to graph entities and relationships.

This graph-native governance model enables organizations to understand how governance requirements propagate across interconnected assets and how changes to policies, ownership, or controls may impact downstream systems, use cases, APIs, workflows, or AI agents.

This governance structure supports:

AI Agent Interoperability

nodes:
  - id: AGENT-AVIATION-001
    type: Agent
    $ref: ../agents/maintenance-recommendation-agent.yaml

  - id: DP-AVIATION-001
    type: DataProduct
    $ref: ../products/aircraft-maintenance-history.yaml

  - id: API-AVIATION-001
    type: API
    $ref: ../apis/maintenance-risk-score-api.yaml

edges:
  - from: AGENT-AVIATION-001
    to: DP-AVIATION-001
    type: uses
    confidence: high

  - from: AGENT-AVIATION-001
    to: API-AVIATION-001
    type: uses
    confidence: high

ODPG provides structured graph context that can be consumed by AI agents, automation systems, semantic search engines, orchestration platforms, and reasoning systems operating across enterprise ecosystems.

Through graph traversal, AI agents can identify:

This capability establishes the foundation for graph-native AI ecosystems where agents can navigate enterprise knowledge structures using trusted semantic relationships and governance-aware graph traversal.

Interoperability

ODPG is designed to operate as an interoperable relationship layer across the broader Open Data Products ecosystem, where graph nodes may reference ODPS data products, ODPV vocabulary definitions, ODPC catalog entries, governance specifications, APIs, workflows, use cases, KPI definitions, or external organizational assets.

The ref property enables ODPG to link graph entities to external specifications while maintaining lightweight graph portability and reusable interoperability structures.

$ref: ../products/aircraft-maintenance-history.yaml

Through this interoperability model, ODPG enables organizations to federate graph ecosystems across teams, domains, platforms, and organizations while maintaining semantic consistency and reusable relationship intelligence.

ODPG Toolkit

The ODPG Toolkit provides a collection of interoperable tooling capabilities that support graph creation, validation, traversal, governance reasoning, semantic interoperability, strategic intelligence analysis, and AI-agent interaction across Open Data Product ecosystems.

The toolkit may include:

ODPG Agent Toolkit

The ODPG Agent Toolkit extends the graph ecosystem with agent-compatible interfaces that allow AI systems to navigate, reason over, and interact with interconnected enterprise data ecosystems using trusted graph relationships and governance-aware traversal.

The Agent Toolkit may support:

This section is strategically important because ODPC focuses on discovery, while ODPG focuses on reasoning. That is the critical distinction.

Toolkit Components

Toolkit components describe common tooling capabilities that may be implemented by platforms, governance systems, graph services, catalog systems, data product portals, AI-agent runtimes, or other interoperable software.

Toolkit Conformance

The ODPG Toolkit describes interoperable capabilities rather than a single required software implementation. A tool MAY implement one or more toolkit components, provided that it preserves the ODPG graph model, validates against the official schema where applicable, and does not redefine core node, edge, confidence, or reference semantics.

Toolkit implementations SHOULD expose clear inputs and outputs so that graph validators, traversal engines, catalogs, governance systems, and AI-agent runtimes can interoperate consistently.

ODPG MAY provide an agent-friendly JSONL resource at /graph/objects.jsonl. This one-object-per-line file is intended for retrieval, relationship classification, traversal planning, graph reasoning, validation hints, and lightweight AI-agent tool calls. Unlike ODPC catalog JSONL resources, which focus on discovery and object selection, the ODPG JSONL resource focuses on graph reasoning and traversal semantics.

Toolkit Component Typical Input Typical Output
Graph Validation Toolkit ODPG YAML or JSON Validation report
Graph Traversal Toolkit ODPG graph and traversal query Paths, dependencies, impacted nodes
Strategic Intelligence Toolkit ODPG graph and objectives Gaps, overlaps, opportunities
AI Agent Toolkit ODPG graph and agent task context Trusted graph context and reasoning paths
Federation Toolkit Multiple ODPG graphs Federated graph view or cross-domain mappings

Graph Validation Toolkit

The Graph Validation Toolkit validates ODPG documents against the official schema and verifies structural consistency, node integrity, edge validity, confidence values, and interoperability requirements.

Capabilities may include:

Graph Traversal Toolkit

The Graph Traversal Toolkit enables traversal across interconnected graph entities using semantic, strategic, operational, and governance relationships.

Capabilities may include:

Strategic Intelligence Toolkit

The Strategic Intelligence Toolkit analyzes graph relationships to identify organizational gaps, overlapping initiatives, unsupported objectives, and emerging strategic opportunities.

Capabilities may include:

AI Agent Toolkit

Example of AI agent graph interaction:

nodes:
  - id: AGENT-001
    type: Agent
    $ref: ../agents/enterprise-analytics-agent.yaml

  - id: DP-001
    type: DataProduct
    $ref: ../products/customer-360.yaml

  - id: API-001
    type: API
    $ref: ../apis/customer-insights-api.yaml

edges:
  - from: AGENT-001
    to: DP-001
    type: uses
    confidence: high

  - from: AGENT-001
    to: API-001
    type: uses
    confidence: high

The AI Agent Toolkit enables AI agents and automation systems to interact with ODPG ecosystems through graph-native semantic interfaces and governance-aware traversal mechanisms.

The toolkit may support:

Federation Toolkit

The Federation Toolkit enables organizations to connect multiple ODPG ecosystems into federated graph environments capable of supporting cross-domain interoperability, distributed governance, and enterprise-scale graph reasoning.

Capabilities may include:

Specification extensions

Example of extension usage:

schema: https://opendataproducts.org/odpg-v1.0/schema/odpg.yaml
version: 1.0
kind: Graph
x-internal-id: foobar123
x-source-system: internal-graph-platform
graph:
  metadata:
    id: GRAPH-AVIATION-001
    name:
      en: Aviation Data Product Value Graph
    description:
      en: Graph describing how aviation data products, use cases, policies, agents, opportunities, and business objectives are connected.
    owner:
      name: Aviation Data Product Team
      email: aviation-data-products@example.com
      x-team-id: TEAM-042

  nodes:
    - id: DP-AVIATION-001
      type: DataProduct
      $ref: ../products/aircraft-maintenance-history.yaml
      x-lineage-system-id: lin-987

  edges:
    - from: DP-AVIATION-001
      to: OBJ-AVIATION-001
      type: contributesTo
      confidence: medium
      x-evidence-url: https://example.com/evidence/graph-aviation-001

While the Open Data Product Graphs Specification defines the core graph objects and attributes, organizations may need to add implementation-specific metadata for local tools, internal workflows, or platform-specific requirements.

Extension properties are implemented as patterned fields that are always prefixed with x-. These fields may appear in ODPG objects such as the graph root, metadata, metadata.owner, nodes, and edges.

Extensions are not part of the official ODPG object model unless they are later adopted into the specification. Tooling may ignore extension fields unless explicit support has been added.

Extensions should not be used to redefine core ODPG semantics. They should be used only for additional metadata that does not fit the standard attributes.

Useful and widely adopted extensions may become candidates for future versions of the standard. To propose useful extensions, raise an issue in GitHub:

Open Data Product Initiative GitHub issues

Element name
Type Options Description
^x- any Allows extensions to the Open Data Product Graphs Schema. The field name MUST begin with x-, for example, x-internal-id. The value can be null, a primitive, an array, or an object.

Terms used

This project works with Open Data Product Graphs (ODPG) 1.0 documents and a small HTML generator for exploration. ODPG uses the Open Data Product Vocabulary (ODPV) as the shared vocabulary across the OpenDataProducts.org standards family: stable identifiers, labels, definitions, aliases, and relationship names should stay aligned with ODPV so graphs stay interoperable with ODPS, ODPC, and other tools.

For machine-readable lookup of vocabulary entries, use the ODPV term records at ODPV terms.jsonl when available from the publication host.

The tables below list ODPV-aligned terms this repo uses in examples, the generator, and the explorer UI, plus short notes where ODPG gives them a concrete graph shape.

Shared terms from ODPV (graph document and nodes)

Term (human) ODPV-style term Usage in this project
Data product graph Graph Root kind of the YAML graph; validated in generate_graph_explorer.py as Graph.
Graph identifier Identifier (concept) graph.metadata.id and each node id are unique keys used by edges (from / to).
Reference Reference (concept) Each node's $ref property points to the underlying file or URI for that entity.
Data product DataProduct Node type value, such as sample DP-* nodes.
Use case UseCase Node type value, such as sample UC-* nodes.
Business objective BusinessObjective Node type value, such as sample OBJ-* nodes.
KPI KPI Node type value, such as sample KPI-* nodes.
Policy Policy Node type value, such as sample POL-* nodes; governance relationships attach here.
API API Node type value, such as sample API-* nodes.
Agent Agent Node type value, such as sample AGENT-* nodes.
Strategic opportunity StrategicOpportunity Node type value, such as sample OPP-* nodes.

ODPG defines additional supported node types, such as Domain, Dataset, Workflow, and Capability, that are valid in the standard even when they do not appear in every sample graph.

Shared relationship terms from ODPV (edges)

Edge type values in YAML are spelled exactly as in ODPG. The generator's core list and tooltips mirror the ODPG relationship model, including:

Edge type (ODPG / ODPV-aligned) Role in graphs here
uses Operational usage between nodes.
supports Support for a business objective.
contributesTo Contribution toward an outcome or objective.
measures KPI measures an objective or outcome.
tracks Tracking or KPI-related information flow.
dependsOn Dependency between nodes.
produces / consumes Production or consumption of data, outputs, services, or interfaces.
governedBy Governance or policy attachment.
ownedBy Ownership or stewardship.
alignsWith / alignWith Strategic or semantic alignment.
relatedTo Generic semantic link.
impacts Impact relationship.
derivedFrom Derivation or origin.
exposes API or interface exposure.
monitors Monitoring relationship.
identifies Identification of an opportunity or condition.

Domain-specific type strings are allowed by ODPG for extension; the explorer will still render them, with legend coloring falling back to a neutral default when no explicit color is defined.

ODPG- and project-specific usage notes

Term Description
schema URL of the ODPG YAML schema used for validation, such as ODPG YAML schema.
version ODPG document version field carried in the graph root.
kind Root document type. Use Graph.
graph.metadata.name Localized graph title, such as graph.metadata.name.en, shown in the explorer header.
graph.nodes Array of node objects shaped as { id, type, $ref }; the explorer maps type to colors and groups.
graph.edges Array of edge objects shaped as { from, to, type, confidence }; confidence is high, medium, or low per ODPG guidance.
generate_graph_explorer.py Offline generator: reads graph YAML, validates core fields, emits graph-explorer.html for browser viewing.
graph-explorer.html Static visualization; relationship descriptions in the UI are aligned with the ODPG edge definitions baked into the generator.

Reference field name: Use $ref on nodes when validating against the ODPG JSON/YAML schema. The generator accepts legacy ref values during transition, but $ref is the schema-aligned field.

Relationship vocabulary: Prefer ODPV-defined relationship identifiers for graph.edges[].type so the same edge semantics can be shared with ODPC, other ODPG tools, and downstream AI or governance pipelines.

Editors and contributors

This specification is openly developed and a lot of the work comes from community. We list all community contributors as a sign of appreciation. Maintainers process the feedback and draft new candidate releases, which may become the versions of the specification.

Maintainers: