Parameter sets#

How to describe parameter claims: a parameter set is a batch of claims about a target, each naming a curated parameter, a quantity, and a provenance class.

  • A batch of claims about a target: each names a curated parameter, a quantity or curve, and a provenance class (literature, measured, fitted, assumed).

  • Claims are records so sources can disagree; consumers select among them.

Define one#

A claim batch from the literature#

from battinfo.api import create_parameter_set

record = create_parameter_set(
    uid="fm9p-sqkk-tbx3-rr66",
    name="Graphite density claims, Smith 2026",
    material_kind="graphite",
    claims=[
        {
            "parameter": "density",
            "quantity": {"value": 2.26, "unit": "g/cm3"},
            "provenance_class": "literature",
        }
    ],
)
{
  "schema_version": "0.2.0",
  "parameter_set": {
    "id": "https://w3id.org/battinfo/spec/fm9p-sqkk-tbx3-rr66",
    "short_id": "fm9psq",
    "name": "Graphite density claims, Smith 2026",
    "material_kind": "graphite",
    "scope": "material",
    "claims": [
      {
        "parameter": "density",
        "quantity": {
          "value": 2.26,
          "unit": "g/cm3"
        },
        "provenance_class": "literature"
      }
    ]
  },
  "provenance": {
    "source_type": "literature",
    "retrieved_at": 1750000000,
    "battinfo_version": "0.7.0"
  }
}

Emitted by record_to_jsonld, hosted-context mode.

{
  "@context": [
    "https://w3id.org/emmo/domain/battery/context",
    {
      "schema": "https://schema.org/",
      "dcterms": "http://purl.org/dc/terms/",
      "battinfo": "https://w3id.org/battinfo/"
    }
  ],
  "@id": "https://w3id.org/battinfo/spec/fm9p-sqkk-tbx3-rr66",
  "@type": "schema:Dataset",
  "schema:name": "Graphite density claims, Smith 2026",
  "schema:about": {
    "@type": "Graphite",
    "@id": "https://w3id.org/emmo/domain/chemical-substance#substance_d53259a7_0d9c_48b9_a6c1_4418169df303",
    "schema:name": "Graphite"
  },
  "schema:additionalProperty": {
    "@type": "schema:PropertyValue",
    "schema:name": "scope",
    "schema:value": "material"
  },
  "hasProperty": {
    "@type": [
      "battinfo:density",
      "ConventionalProperty"
    ],
    "skos:prefLabel": "density",
    "hasNumericalPart": {
      "@type": "RealData",
      "hasNumberValue": 2.26
    },
    "hasMeasurementUnit": "https://w3id.org/emmo#GramPerCubicCentiMetre",
    "schema:additionalProperty": {
      "@type": "schema:PropertyValue",
      "schema:name": "provenance_class",
      "schema:value": "literature"
    }
  }
}

What to notice:

  • The claim batch emits as one schema:Dataset node: scalar claims as EMMO-typed quantities, the target on schema:about.

Common examples#

A selection of real, validated records from the packaged examples corpus — each one click away, included from its single source under examples/. The full, living library is the registry: browse it there.

Chen 2020 - graphite (parameter-set)

The record ships in the installed wheel — load it as a starting point:

import json
from importlib import resources

record = json.loads(
    resources.files("battinfo")
    .joinpath("data/examples/parameter-set/parameter-set-8qqs-rh43-wt8d-172n.json")
    .read_text(encoding="utf-8")
)
{
  "schema_version": "0.2.0",
  "parameter_set": {
    "id": "https://w3id.org/battinfo/spec/8qqs-rh43-wt8d-172n",
    "short_id": "8qqsrh",
    "name": "Chen 2020 - graphite",
    "material_kind": "graphite",
    "scope": "material",
    "claims": [
      {
        "parameter": "particle_radius",
        "quantity": {
          "value": 5.86e-06,
          "unit": "m"
        },
        "provenance_class": "fitted"
      },
      {
        "parameter": "max_concentration",
        "quantity": {
          "value": 33133.0,
          "unit": "mol/m3"
        },
        "provenance_class": "fitted"
      },
      {
        "parameter": "reaction_rate_constant",
        "quantity": {
          "value": 6.716e-06,
          "unit": "mol.m-2.s-1"
        },
        "provenance_class": "fitted"
      },
      {
        "parameter": "stoichiometry_min",
        "quantity": {
          "value": 0.0279,
          "unit": "1"
        },
        "provenance_class": "fitted"
      },
      {
        "parameter": "stoichiometry_max",
        "quantity": {
          "value": 0.9014,
          "unit": "1"
        },
        "provenance_class": "fitted"
      },
      {
        "parameter": "ocp",
        "curve": {
          "x_quantity": "stoichiometry",
          "x": [
            0.0,
            0.05,
            0.1,
            0.2,
            0.4,
            0.6,
            0.8,
            1.0
          ],
          "y": [
            1.2,
            0.35,
            0.22,
            0.16,
            0.13,
            0.12,
            0.1,
            0.05
          ],
          "y_unit": "V",
          "interpolation": "linear",
          "branch": "average"
        },
        "provenance_class": "measured",
        "method": "GITT",
        "comment": "Coarsened illustrative curve; the source provides the full-resolution table."
      }
    ],
    "model_context": {
      "tool": "BPX",
      "name": "Chen2020",
      "model": "DFN"
    },
    "description": "Subset of the Chen et al. 2020 LG M50 parameterization for the graphite negative electrode material, as a worked example of parameter claims."
  },
  "provenance": {
    "source_type": "literature",
    "retrieved_at": 1786968980,
    "citation_doi": "10.1149/1945-7111/ab9050",
    "battinfo_version": "0.7.0",
    "citation": "https://doi.org/10.1149/1945-7111/ab9050"
  },
  "notes": [
    "Worked example generated by scripts in the parameter-claims change; values from the cited source."
  ]
}

Emitted by record_to_jsonld, hosted-context mode.

{
  "@context": [
    "https://w3id.org/emmo/domain/battery/context",
    {
      "schema": "https://schema.org/",
      "dcterms": "http://purl.org/dc/terms/",
      "bibo": "http://purl.org/ontology/bibo/",
      "battinfo": "https://w3id.org/battinfo/"
    }
  ],
  "@id": "https://w3id.org/battinfo/spec/8qqs-rh43-wt8d-172n",
  "@type": "schema:Dataset",
  "schema:name": "Chen 2020 - graphite",
  "schema:description": "Subset of the Chen et al. 2020 LG M50 parameterization for the graphite negative electrode material, as a worked example of parameter claims.",
  "schema:about": {
    "@type": "Graphite",
    "@id": "https://w3id.org/emmo/domain/chemical-substance#substance_d53259a7_0d9c_48b9_a6c1_4418169df303",
    "schema:name": "Graphite"
  },
  "schema:additionalProperty": [
    {
      "@type": "schema:PropertyValue",
      "schema:name": "scope",
      "schema:value": "material"
    },
    {
      "@type": "schema:PropertyValue",
      "schema:name": "source_model",
      "schema:value": "DFN"
    },
    {
      "@type": "schema:PropertyValue",
      "schema:name": "source_name",
      "schema:value": "Chen2020"
    },
    {
      "@type": "schema:PropertyValue",
      "schema:name": "source_tool",
      "schema:value": "BPX"
    }
  ],
  "hasProperty": [
    {
      "@type": [
        "battinfo:particleRadius",
        "ConventionalProperty"
      ],
      "skos:prefLabel": "particleRadius",
      "hasNumericalPart": {
        "@type": "RealData",
        "hasNumberValue": 5.86e-06
      },
      "hasMeasurementUnit": "https://w3id.org/emmo#Metre",
      "schema:additionalProperty": {
        "@type": "schema:PropertyValue",
        "schema:name": "provenance_class",
        "schema:value": "fitted"
      }
    },
    {
      "@type": [
        "battinfo:maxConcentration",
        "ConventionalProperty"
      ],
      "skos:prefLabel": "maxConcentration",
      "hasNumericalPart": {
        "@type": "RealData",
        "hasNumberValue": 33133.0
      },
      "schema:unitText": "mol/m3",
      "schema:additionalProperty": {
        "@type": "schema:PropertyValue",
        "schema:name": "provenance_class",
        "schema:value": "fitted"
      }
    },
    {
      "@type": [
        "battinfo:reactionRateConstant",
        "ConventionalProperty"
      ],
      "skos:prefLabel": "reactionRateConstant",
      "hasNumericalPart": {
        "@type": "RealData",
        "hasNumberValue": 6.716e-06
      },
      "schema:unitText": "mol.m-2.s-1",
      "schema:additionalProperty": {
        "@type": "schema:PropertyValue",
        "schema:name": "provenance_class",
        "schema:value": "fitted"
      }
    },
    {
      "@type": [
        "battinfo:stoichiometryMin",
        "ConventionalProperty"
      ],
      "skos:prefLabel": "stoichiometryMin",
      "hasNumericalPart": {
        "@type": "RealData",
        "hasNumberValue": 0.0279
      },
      "hasMeasurementUnit": "https://w3id.org/emmo#EMMO_5ebd5e01_0ed3_49a2_a30d_cd05cbe72978",
      "schema:additionalProperty": {
        "@type": "schema:PropertyValue",
        "schema:name": "provenance_class",
        "schema:value": "fitted"
      }
    },
    {
      "@type": [
        "battinfo:stoichiometryMax",
        "ConventionalProperty"
      ],
      "skos:prefLabel": "stoichiometryMax",
      "hasNumericalPart": {
        "@type": "RealData",
        "hasNumberValue": 0.9014
      },
      "hasMeasurementUnit": "https://w3id.org/emmo#EMMO_5ebd5e01_0ed3_49a2_a30d_cd05cbe72978",
      "schema:additionalProperty": {
        "@type": "schema:PropertyValue",
        "schema:name": "provenance_class",
        "schema:value": "fitted"
      }
    }
  ],
  "schema:variableMeasured": {
    "@type": "schema:PropertyValue",
    "schema:name": "ocp",
    "schema:description": "tabulated curve vs stoichiometry, 8 points, average branch",
    "schema:unitText": "V",
    "schema:measurementTechnique": "GITT",
    "schema:additionalProperty": {
      "@type": "schema:PropertyValue",
      "schema:name": "provenance_class",
      "schema:value": "measured"
    }
  },
  "schema:citation": {
    "@id": "https://doi.org/10.1149/1945-7111/ab9050",
    "@type": "schema:CreativeWork",
    "bibo:doi": "10.1149/1945-7111/ab9050"
  },
  "schema:comment": "Worked example generated by scripts in the parameter-claims change; values from the cited source."
}

Fields#

Generated from the packaged JSON Schemas — the same files battinfo validate and the registry’s publish gate enforce. Every record also carries the shared envelope (schema_version, provenance, and optional notes, funding, contributor, license). Quantities are {value, unit} maps and may also carry value_basis (Measured, Conventional, Rated, or Nominal) and conditions (the parameters under which the value holds, each itself a quantity; a qualitative condition may be value_text alone). In JSON-LD, conditions ride a measurement node the quantity isOutputOf; the voltage_reference key instead becomes a hasMetrologicalReference datum on the quantity, beside its unit. When authoring, an instance references its spec with the spec_id= kwarg; the record stores the self-describing <type>_spec_id key shown in the tables below.

parameter-set fields#

Schema: parameter-set.schema.json · required at top level: schema_version, parameter_set, provenance

Field

Type

Required

Description

id

→ SpecIri

yes

short_id

→ ShortId

name

string

yes

Human-readable label for this batch of claims, conventionally ‘ - ’ (e.g. ‘Chen 2020 - graphite’).

material_kind

string

Target: a generic material kind key from the curated material_kinds vocabulary (e.g. ‘graphite’, ‘nmc811’). Claims about the generic chemistry collate here; resolution falls back from a product-specific material spec to its kind.

material_spec_id

→ MaterialSpecIri

Target: a specific material spec (a vendor product/grade). Use for claims measured on a particular product rather than the generic chemistry.

cell_spec_id

→ SpecIri

Target: a cell spec. Use for cell-level fitted sets (full-cell parameterizations, ECM fits) and for electrode/separator/electrolyte claims that describe this cell’s build rather than a material.

scope

material | electrode | separator | electrolyte … (5 values)

Physical scope the claims describe. Defaults (in the builder) to ‘material’ for material targets and ‘cell’ for cell-spec targets. Electrode/separator/electrolyte scopes carry manufactured-build parameters (thickness, porosity, transport) that belong to a cell design, not to a powder.

electrode_polarity

positive | negative

For electrode-scope claims on a cell-spec target: which electrode the claims describe.

model_context

object

The digital artifact these claims came from, when they were imported from a modelling parameter set (BPX file, PyBaMM parameter set, …).

claims

array of → Claim

yes

description

string

comment

string