Zum Inhalt springen
Konzepte

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:

FeldBedeutung
value, unitDer Wert als JSON und seine Maßeinheit; value ist null, wenn das Feld geleert wurde
revision1, 2, 3 … je Feld und Ziel (Modellversion oder Einheit)
sourceWoher der Wert stammt, siehe unten
recorded_by, recorded_atWer diese Revision erfasst hat und wann
responsibleDas für den Wert verantwortliche Mitglied
review_status, reviewed_by, reviewed_at, review_noteDie 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_atBei Zustandsdaten: wann der Wert gemessen wurde
superseded_atWann eine neuere Revision diese abgelöst hat
registry_versionDie Registerversion, unter der der Wert erfasst wurde
sourceBedeutung
manualEin Mitglied hat ihn im Portal eingegeben
importEr stammt aus einem Tabellenimport
supplierEin Lieferant hat ihn über einen Anfragelink gesendet, oder ein Servicepartner hat ihn gemeldet
apiEin API-Schlüssel hat ihn gemeldet (nur Zustandsdaten)
systemBatteryPass 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.

OperationLiefert
listModelVersionValues, listBatteryValuesDie aktuelle Revision jedes Felds einer Modellversion oder Einheit
listModelVersionValueHistory, listBatteryValueHistoryAlle Revisionen eines Felds, die neueste zuerst
listEvidence, getEvidence, downloadEvidenceDie Dokumente, ihre Revisionen, wo sie verwendet werden, und die Dateien
cURL
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_statusBedeutung
capturedErfasst; eine automatische Prüfung ist fehlgeschlagen oder noch nicht bestanden
auto_checkedDie automatischen Prüfungen sind bestanden; wartet auf einen Prüfer
approvedVon einem Prüfer freigegeben; nur freigegebene Werte gelangen in eine Passversion
rejectedVon 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:

displayBedeutung
required_missingJetzt Pflicht, kein aktueller freigegebener Wert; blockiert die Veröffentlichung
required_pending_reviewEin Wert existiert, ist aber nicht freigegeben; blockiert die Veröffentlichung
okEin freigegebener Wert liegt vor
not_applicableAls nicht zutreffend markiert, mit gespeicherter Begründung
later_requiredDie Pflicht beginnt später oder ist noch nicht ausgelöst
optional_missingOptional 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.

Auf dieser Seite