A complete ODPS-compliant data product specification brings together all the necessary pieces to describe, manage, and govern a reusable data product.
Let’s break it down using the UrbanPulse Events product example.
Every ODPS YAML starts by declaring the schema and version:
schema: 'https://opendataproducts.org/v4.0/schema/odps.yaml'
version: 4.0This line links the product to the ODPS v4.0 validation rules.
The product.details section includes human-readable information.
product:
details:
en:
name: UrbanPulse Events
productID: urbanpulse-events-001
valueProposition: Enable smarter city experiences ...
description: UrbanPulse Events is a SmartCity data product ...This tells users and machines what the product is, what it does, and how it fits into your domain.
The product.contract part connects to an external data usage agreement:
contract:
id: 02323M123
type: ODCS
contractVersion: 2.2.2
contractURL: 'https://datamesh-manager.com/urbanltd/dataproducts/9bd530'This keeps legal terms separate and versioned.
Each pricing tier is defined inside pricingPlans.declarative, referencing reusable specs.
pricingPlans:
declarative:
en:
- name: Basic Reader
price: 0
SLA:
$ref: '#/Product/SLA/default'
dataQuality:
$ref: '#/Product/dataQuality/default'Instead of repeating service levels, it uses references. This helps maintain consistency.
SLAs, Data Quality, and Access methods are fully described and reusable.
SLA:
default:
dimensions:
- dimension: uptime
objective: 90
unit: percentThis can be used across pricing plans and even other products by copy or external reference.
Define API or file-based access in the dataAccess block.
dataAccess:
API:
outputPorttype: API
accessURL: 'https://data.cms.gov/data-api/...'Define payment logic with paymentGateways.
paymentGateways:
default:
type: Stripe
reference: 'https://docs.stripe.com/'support:
email: support@opendataproducts.org
license:
en:
scope:
rights:
- Reproduction
- Distribution
dataHolder:
en:
legalName: MindMote Oy
email: contact@mindmote.fiThis makes the product self-contained and ready for publication or sale.
- Validates automatically against the ODPS schema
- Supports AI-native discovery and integration
- Avoids duplication with reusable definitions
- Enforces quality and legal standards
- Works in APIs, data catalogs, and governance tools