Herkunft und Freigabe
Jeder Wert behält Quelle, Urheber, Zeitpunkt und Nachweise und wird abgelöst statt überschrieben; deklarierte Daten werden geprüft, bevor sie in einen Pass gelangen, von einer zweiten Person, wenn die Organisation das Vier-Augen-Prinzip nutzt.
Ein Pass ist nur so vertrauenswürdig wie seine Werte. BatteryPass hält deshalb fest, woher jeder Wert stammt, wer ihn erfasst und freigegeben hat und welche Dokumente ihn belegen, und es bewahrt jeden früheren Stand auf.
Ein Wert ist eine Revision
Jeder Wert wird als Revision gespeichert (FieldValue). Die API liefert diese Felder:
| Feld | Bedeutung |
|---|---|
value, unit | Der Wert als JSON und seine Maßeinheit; value ist null, wenn das Feld geleert wurde |
revision | 1, 2, 3 … je Feld und Ziel (Modellversion oder Einheit) |
source | Woher der Wert stammt, siehe unten |
recorded_by, recorded_at | Wer diese Revision erfasst hat und wann |
responsible | Das für den Wert verantwortliche Mitglied |
review_status, reviewed_by, reviewed_at, review_note | Die Prüfentscheidung |
evidence[] | Die Dokumente, auf denen diese Revision beruht (Art, Titel, Zugriffsstufe, Revision) |
checks[] | Ergebnisse der automatischen Prüfungen: pass, warn oder fail mit einer Meldung |
measured_at | Bei Zustandsdaten: wann der Wert gemessen wurde |
superseded_at | Wann eine neuere Revision diese abgelöst hat |
registry_version | Die Registerversion, unter der der Wert erfasst wurde |
source | Bedeutung |
|---|---|
manual | Ein Mitglied hat ihn im Portal eingegeben |
import | Er stammt aus einem Tabellenimport |
supplier | Ein Lieferant hat ihn über einen Anfragelink gesendet, oder ein Servicepartner hat ihn gemeldet |
api | Ein API-Schlüssel hat ihn gemeldet (nur Zustandsdaten) |
system | BatteryPass hat ihn geschrieben |
Werte werden abgelöst, nie überschrieben
Eine Änderung bearbeitet nie einen gespeicherten Wert. Sie fügt eine neue Revision ein und markiert die vorherige als abgelöst; so bleibt die ganze Historie erhalten, einschließlich wer was wann geändert hat. Auch eine Prüfentscheidung ist eine Revision: Die Freigabe fügt eine Revision mit demselben Wert und dem Prüfer ein.
| Operation | Liefert |
|---|---|
listModelVersionValues, listBatteryValues | Die aktuelle Revision jedes Felds einer Modellversion oder Einheit |
listModelVersionValueHistory, listBatteryValueHistory | Alle Revisionen eines Felds, die neueste zuerst |
listEvidence, getEvidence, downloadEvidence | Die Dokumente, ihre Revisionen, wo sie verwendet werden, und die Dateien |
curl -s "$BATTERYPASS_URL/api/v1/model-versions/$VERSION_ID/values/performance.nominal_voltage/history" \
-H "Authorization: Bearer $BATTERYPASS_API_KEY" \
| jq '.items[] | {revision, value, source, review_status, reviewed_at}'Dokumente sind auf dieselbe Weise versioniert: Eine neue Revision eines Dokuments löst die alte ab, und ein Wert, der auf einem abgelösten Dokument beruht, wird durch eine fehlgeschlagene Prüfung markiert.
Prüfstatus
review_status | Bedeutung |
|---|---|
captured | Erfasst; eine automatische Prüfung ist fehlgeschlagen oder noch nicht bestanden |
auto_checked | Die automatischen Prüfungen sind bestanden; wartet auf einen Prüfer |
approved | Von einem Prüfer freigegeben; nur freigegebene Werte gelangen in eine Passversion |
rejected | Von einem Prüfer mit einer Notiz abgelehnt; das verantwortliche Mitglied korrigiert ihn |
Die Freigabe erteilt ein Prüfer (Rolle reviewer, admin oder owner) im Portal. Sie wird verweigert, solange
- eine Prüfung des Werts fehlschlägt,
- das Register für das Feld einen Nachweis verlangt und kein aktuelles Dokument den Wert belegt, oder
- der Prüfer den Wert selbst erfasst hat und in der Organisation das Vier-Augen-Prinzip gilt (Standard).
Die Werte eines Tabellenimports lassen sich in einem Schritt je Import freigeben, für jeden Wert nach denselben Regeln. Werte, die eine dieser Regeln zurückhält, bleiben für die Einzelprüfung offen.
Zustandsdaten sind die Ausnahme: Als Messwerte gemeldete Werte werden ohne Prüfer angenommen und als approved
mit ihrem measured_at gespeichert. Siehe Zustandsdaten und Lebenszyklus.
Warum API-Schlüssel nicht freigeben oder veröffentlichen
Ein API-Schlüssel gehört der Organisation, nicht einer Person. Das Vier-Augen-Prinzip vergleicht den Urheber
eines Werts mit seinem Prüfer, und eine Veröffentlichung braucht einen Prüfer, der dafür einsteht. Ein Schlüssel,
hinter dem niemand steht, könnte an beidem nicht teilnehmen, ohne es zu schwächen. Deshalb schreiben Schlüssel nie
deklarierte Daten, geben keine Werte frei und veröffentlichen oder ziehen keine Pässe zurück. Sie lesen, und mit
dem Scope condition melden sie Messwerte und Lebenszyklus-Ereignisse, die source api tragen; das
Lebenszyklus-Ereignis jeder Meldung nennt den Schlüssel in api_key.
Deklarierte Daten kommen über das Portal, Lieferantenanfragen oder den Tabellenimport zu BatteryPass und werden von Mitgliedern freigegeben.
Mit dem Scope import stellt ein Schlüssel einen Tabellenimport bereit: hochladen, zuordnen, prüfen. Übernehmen
und die importierten Werte freigeben können nur Mitglieder im Portal, sodass auch Daten aus einem ERP erst durch
die Entscheidung eines Mitglieds zu deklarierten Daten werden (ADR-026). Siehe
Einheiten aus der Fertigung.
Vollständigkeit
getModelVersionCompleteness und
getBatteryCompleteness werten das Register für eine
Modellversion oder Einheit aus und geben jedem Feld einen Status display:
display | Bedeutung |
|---|---|
required_missing | Jetzt Pflicht, kein aktueller freigegebener Wert; blockiert die Veröffentlichung |
required_pending_review | Ein Wert existiert, ist aber nicht freigegeben; blockiert die Veröffentlichung |
ok | Ein freigegebener Wert liegt vor |
not_applicable | Als nicht zutreffend markiert, mit gespeicherter Begründung |
later_required | Die Pflicht beginnt später oder ist noch nicht ausgelöst |
optional_missing | Optional und leer |
Einen Prozentwert gibt es bewusst nicht. summary zählt die Status, und summary.blocking ist die Zahl der
Felder, die die Veröffentlichung noch blockieren.
Zugriffsstufen
Welche Passdaten öffentlich sind, welche eingeschränkt, und wie BatteryPass eingeschränkte Daten aus öffentlichen Antworten heraushält.
Zustand und Lebenszyklus
Wie gemessene Zustandsdaten ohne Prüfschritt in einen Pass gelangen, wie die Neuveröffentlichung geregelt ist und was Lebenszyklus-Ereignisse festhalten.