New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@passwerk/rules

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@passwerk/rules

Bundled, checksummed, offline rule artefacts and knowledge base for EU Digital Battery Passports (IDTA 02035, AAS, DIN DKE SPEC 99100)

latest
Source
npmnpm
Version
0.1.1
Version published
Maintainers
1
Created
Source

@passwerk/rules

Bundled, checksummed, offline knowledge base for the EU Digital Battery Passport. Pure data plus typed accessors; no filesystem, no network, no model calls. Runs in Node and in the browser.

What is inside

DirectoryContentOrigin
artefacts/idta/02035-{1..7}/<version>/The seven official IDTA 02035 submodel templates (JSON with and without example values, AASX)admin-shell-io/submodel-templates, pinned commit, CC-BY-4.0
artefacts/aas/{3.0.9,3.1.2}/aas.jsonAAS metamodel JSON Schemasadmin-shell-io/aas-specs, tagged releases, CC-BY-4.0
artefacts/ec/Commission guidance "Digital Batteries Passport: data points by category" v2.0 (PDF)European Commission, CC-BY-4.0
artefacts/batterypass/Battery Pass Data Attribute Longlist v1.2 (xlsx)Battery Pass consortium, CC-BY-4.0
artefacts/batterypass/samm/Battery Pass Data Model aspect models v1.2.0 / 1.2.1 (SAMM Turtle, seven files)batterypass/BatteryPassDataModel, pinned commit, CC-BY-4.0
artefacts/manifest.jsonSource URL, version, sha256 and size of every artefactmaintained by pnpm artefacts:write
kb/ec-datapoints.jsonThe 71 Commission data points with legal reference and per-category applicabilitytranscribed from the PDF above
kb/generated/template-catalogue.jsonEvery template element (211) with path, semanticId, cardinality, value type, unit, DIN chaptergenerated from the templates
kb/generated/din-longlist.jsonThe 93 DIN DKE SPEC 99100 attributes with chapter, applicability, unit, format, access rightsgenerated from the xlsx
kb/generated/batterypass-samm.jsonThe 144 Battery Pass SAMM properties with description, DIN chapter, data type, unit, enumeration values and range; dev-time cross-check only (ADR D-030)generated from the Turtle files
kb/attributes/*.json93 authored attributes: DE/EN names, synonyms, who-has-it, explanations, mapping to EC data points and template elementsauthored, human-reviewed
kb/rules.jsonPlausibility rules PW-PLAUS-* (validation layer L4), DE/ENauthored
kb/timeline.jsonLegal dates with article references and statusverified against the consolidated regulation
PROVENANCE.mdHuman-readable rendering of the manifestgenerated

See kb/attributes/README.md for the attribute schema and the runtime joins.

Usage

import { attributes, getAttribute, getAttributesForCategory, templates, listCapabilities } from '@passwerk/rules';

const mass = getAttribute('batteryMass');
mass?.name.de;                 // "Batteriemasse"
mass?.applicability.LMT;       // { status: "mandatory" }
mass?.legalRefs;               // ["BR Annex VI Part A (5)", "DIN longlist: Annex XIII (1a); Annex VI Part A (5)"]
mass?.templateElements[0]?.semanticId;

getAttributesForCategory('EV', ['mandatory']).length;
templates[5]?.environment;     // IDTA 02035-6 Material Composition, AAS V3.0 JSON
listCapabilities();            // versions, checksums, counts, sovereignty statement

Maintenance

pnpm --filter @passwerk/rules run artefacts          # fetch + verify against pinned checksums
pnpm --filter @passwerk/rules run artefacts:write    # re-pin after a deliberate upstream update
pnpm --filter @passwerk/rules run artefacts:verify   # offline verification only
pnpm --filter @passwerk/rules run generate           # regenerate kb/generated/* and PROVENANCE.md

The test suite fails if a bundled file does not match its checksum, if a generated file is stale, or if any attribute references an unknown longlist row, EC data point or template path.

Honesty flags

Attributes and timeline events carry verify: true when the mapping or date came from a secondary source or a judgement call. listCapabilities() reports how many are open. Nothing in this package is legal advice.

Keywords

battery-passport

FAQs

Package last updated on 13 Sep 2026

Related posts