Documentation
BattINFO is the implementation layer for the EMMO domain-battery ontology, JSON Schemas, a Python library, a CLI, and curated mapping tables for authoring, validating, and publishing battery metadata as Linked Data.
Building with BattINFO? Open the developer reference →
Full Python API, CLI commands, JSON Schemas, the validation contract, and executable notebook tutorials.
Quickstart
Install and publish a record
python -m venv .venv
# until the 0.8 release lands on PyPI, install from source:
.venv/bin/pip install git+https://github.com/BIG-MAP/BattINFO.gitfrom battinfo import CellSpec, publish
result = publish(
CellSpec(
manufacturer="A123",
model="ANR26650M1-B",
format="cylindrical",
chemistry="Li-ion",
nominal_capacity={"value": 2.5, "unit": "Ah"},
),
destination="local",
)
print(result.canonical_iri)
# https://w3id.org/battinfo/spec/7d9k-2m4p-8t3x-6nq5Full notebook walkthroughs are rendered in the documentation guides.
Tutorials
Learn the model step by step
Concepts
The record model, IRIs, and the semantic layer.
2Describing a cell
Author and publish a cell spec, with a taste of material-level depth.
3Linked records
Cells, test specs, tests, and datasets with the workspace.
4Semantic layer
JSON-LD anatomy, EMMO type stacking, RDF and SPARQL.
5Cell descriptors
Research-grade composition: materials, BOMs, electrodes, electrolyte.
6Publish your first dataset
Raw cycler export → validated records → DOI, in five stages.
Reference
Schemas, ontology, and policy
JSON Schemas
Draft 2020-12 schemas for every record type, the canonical contract.
Ontology (battinfo.ttl)
OWL application ontology importing pinned EMMO domain-battery + domain-electrochemistry.
Identifier policy
How w3id.org/battinfo IRIs are minted, governed, and kept stable.
Property & unit mappings
Curated property→EMMO-IRI and unit→EMMO/QUDT-IRI tables driving the JSON-LD transform.
Tools
Validate and convert in the browser
Standards
What BattINFO builds on
Scope
BattINFO and the ontology
The normative semantics live in EMMO domain-battery. BattINFO is the non-normative, operational layer: schemas, mappings, and tooling. It does not host or modify the upstream ontology.
Identifiers minted by BattINFO resolve through the community PURL service at w3id.org/battinfo, this website is documentation, not the resolver.