Skip to main content

Open Data Schema for Energy - validation and transformation library

Project description

ODS-E: Open Data Schema for Energy

License: CC BY-SA 4.0 License: Apache 2.0

ODS-E is an open specification for standardizing energy asset data from IoT devices, enabling interoperability across the renewable energy ecosystem.

Why ODS-E?

  • No Vendor Lock-in: Your data works with any ODS-E compatible system
  • Faster Integrations: Pre-built transforms for common OEMs (Huawei, Enphase, Solarman)
  • Analytics-Ready: Standardized error taxonomy and semantic validation
  • Future-Proof: CC-BY-SA licensed specification ensures extensions stay open

Quick Start

pip install odse
from ods_e import validate, transform

# Validate ODS-E data
result = validate("production_data.json")

# Transform from OEM format
ods_data = transform("huawei_export.csv", source="huawei")

Repository Structure

ona-protocol/
├── LICENSE-SPEC.md       # CC-BY-SA 4.0 (specification, schemas, transforms)
├── LICENSE-CODE.md       # Apache 2.0 (reference implementation, tools)
├── spec/                 # Specification documents
├── schemas/              # JSON Schema definitions
├── transforms/           # OEM transform specifications
├── src/                  # Reference implementation
└── tools/                # CLI tools

Core Schema

{
  "timestamp": "2026-02-05T14:00:00Z",
  "kWh": 847.5,
  "error_type": "normal",
  "PF": 0.98
}

Required fields:

  • timestamp - ISO 8601 with timezone
  • kWh - Active energy (≥ 0)
  • error_type - One of: normal, warning, critical, fault, offline, standby, unknown

Supported OEMs

OEM Format Status
Huawei FusionSolar CSV, API ✅ Included
Enphase Envoy JSON, API ✅ Included
Solarman Logger CSV ✅ Included
SolarEdge JSON API ✅ Included
Fronius JSON API ✅ Included
Switch Energy CSV ✅ Included

License

Documentation

Contributing

Contributions are welcome. Schema and transform contributions must be licensed under CC-BY-SA 4.0.


Maintained by Asoba Corporation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

odse-0.2.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

odse-0.2.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file odse-0.2.0.tar.gz.

File metadata

  • Download URL: odse-0.2.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for odse-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c6528c7e19e14cc8b49a9d52a1c95f1266892fd8ada4981bfd39ea41ebcc86c8
MD5 7cd74e4374f69776e4a3b3f242bc575e
BLAKE2b-256 a63621dc1e445371bea57db735ae720804edff131c64a8f3eaadb516ab690658

See more details on using hashes here.

Provenance

The following attestation bundles were made for odse-0.2.0.tar.gz:

Publisher: python-publish.yml on AsobaCloud/odse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file odse-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: odse-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for odse-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aed60101fe1535a14d0688df705d79fb9a6f3ae2f81db8c7d5b505de77b9b927
MD5 d1c45a682af2da725b23e6c48a9cc1cb
BLAKE2b-256 2bef8613fc23520c7e005b782d70ad8624d58ae09cdf8f399a7d7f45c166052a

See more details on using hashes here.

Provenance

The following attestation bundles were made for odse-0.2.0-py3-none-any.whl:

Publisher: python-publish.yml on AsobaCloud/odse

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page