Extends v1.0 with streaming transport access methods and catalog-time stream metadata. Fully backward-compatible — all v1.0 fields and enum values are preserved unchanged.
dataset:accessMethod enumFour new values alongside the existing INLINE, DOWNLOAD, DATA_ENCLAVE, OFF_CHANNEL:
| Value | Transport | Credentials delivered via |
|---|---|---|
MQTT |
MQTT 5.0 broker subscription | DatasetFulfillment/v1.1 streamConnection in on_confirm |
KAFKA |
Apache Kafka consumer | DatasetFulfillment/v1.1 streamConnection in on_confirm |
API |
REST API with API key or bearer token | DatasetFulfillment/v1.1 streamConnection in on_confirm |
DATA_LAKE |
Cloud object storage — S3 / GCS / ADLS | DatasetFulfillment/v1.1 streamConnection in on_confirm |
dataset:streamMeta fieldA catalog-time sub-object that describes the stream’s topology without exposing credentials. Buyers use this to understand what they are purchasing and to configure deserializers before the stream starts.
"dataset:streamMeta": {
"dataset:streamProtocol": "MQTT",
"dataset:messageFormat": "JSON",
"dataset:updateFrequency": "PT15M",
"dataset:messageSchemaUrl": "https://example.com/schemas/meter-reading-v2.json"
}
| Field | Type | Description |
|---|---|---|
dataset:streamProtocol |
MQTT | KAFKA | API | DATA_LAKE |
Informational mirror of accessMethod |
dataset:messageFormat |
string | Message encoding: JSON, NDJSON, Avro, Protobuf, Parquet, CSV, … |
dataset:updateFrequency |
ISO 8601 duration or REAL_TIME |
How often new data arrives, e.g. PT15M, PT1S, REAL_TIME |
dataset:messageSchemaUrl |
URI | URL to the message schema (JSON Schema / Avro / Protobuf / OpenAPI) |
discover BAP filters by dataset:accessMethod in [MQTT, KAFKA, API, DATA_LAKE]
on_discover BPP returns items with dataset:streamMeta — no credentials yet
confirm BAP confirms and pays
on_confirm BPP provisions credentials and delivers them in
performance[].performanceAttributes as DatasetFulfillment/v1.1
with fulfillment:streamConnection
update BAP rotates credentials before fulfillment:credentialExpiresAt
on_update BPP issues fresh fulfillment:streamConnection
Credentials never appear in the catalog (on_discover). They are provisioned on-demand after confirm and delivered in on_confirm, scoped to the specific buyer and contract.
{
"@context": "https://raw.githubusercontent.com/beckn/DDM/main/specification/schema/DatasetItem/v1.1/context.jsonld",
"@type": "DatasetItem",
"schema:identifier": "stream-ami-mqtt-blr-zone-a",
"schema:name": "AMI Smart Meter Stream — Bengaluru Zone A",
"schema:temporalCoverage": "2026-05-07/..",
"dataset:refreshType": "REAL_TIME",
"dataset:accessMethod": "MQTT",
"dataset:sensitivityLevel": "CONFIDENTIAL",
"dataset:streamMeta": {
"dataset:streamProtocol": "MQTT",
"dataset:messageFormat": "JSON",
"dataset:updateFrequency": "PT15M",
"dataset:messageSchemaUrl": "https://raw.githubusercontent.com/beckn/DEG/main/specification/schema/BecknTimeSeries/v1.0/attributes.yaml"
}
}
See /example/v1.1/streaming/ for full end-to-end flow examples covering MQTT, Kafka, REST API, and Data Lake.
https://raw.githubusercontent.com/beckn/DDM/main/specification/schema/DatasetItem/v1.1/context.jsonld