Een Day One JSON-export offline lezen zonder deze te wijzigen
Houd de gedownloade ZIP ongewijzigd, maak een aparte werkkopie, pak die lokaal uit en open het .json-bestand met een teksteditor of de standaard JSON-hulpmiddelen van Python. De ZIP is een container; de JSON is gestructureerde tekst; eventuele mediamappen bevatten aparte bestanden. Je kunt controleren of de JSON-syntaxis geldig is en mogelijke tekst-, datum- of bijlagewaarden opsporen zonder aan te nemen wat niet-gedocumenteerde sleutels betekenen. Alleen leesbare JSON toont niet aan dat alle mediabestanden aanwezig zijn of dat het archief kan worden hersteld.
Maak eerst onderscheid tussen ZIP, JSON en media
Day One beschrijft de JSON-export als een ZIP-bestand met een .json-bestand met geselecteerde vermeldingen; media kunnen worden opgenomen in mappen voor foto's, video's, audio en pdf's. Volgens de handleiding is JSON bedoeld om gearchiveerde gegevens opnieuw te importeren en kan het worden gelezen door Day One en apps die Day One JSON-bestanden ondersteunen. De exporthandleiding van Day One definieert geen volledig schema per veld. Behandel een bekende bestandsnaam of sleutel daarom niet als bewijs van de betekenis ervan.
Laat de oorspronkelijke ZIP onaangeroerd. Gebruik het archiveringsprogramma van je besturingssysteem om een kopie uit te pakken in een nieuwe lokale map. Upload een persoonlijk dagboek niet naar een online formatter. Noteer voordat je bestanden opent of verplaatst of het archief één JSON-bestand, meerdere JSON-bestanden of mediamappen bevat; de precieze inhoud hangt af van de exportkeuzes. Een .zip openen alsof het JSON is, werkt niet omdat ZIP een ander bestandsformaat is.
Controleer de JSON-syntaxis lokaal
Een JSON-document is tekst die gestructureerde waarden beschrijft. Het hoogste niveau kan een object, array of een andere geldige JSON-waarde zijn; JSON-objecten bevatten benoemde leden, terwijl arrays geordende waarden bevatten. Strings gebruiken dubbele aanhalingstekens en komma's, dubbele punten en haakjes moeten aan de JSON-syntaxis voldoen. De JSON-handleiding van MDN legt deze structuren en veelvoorkomende syntaxisbeperkingen uit.
Python documenteert de volgende opdrachtregelvorm voor een snelle lokale controle en leesbare inspringing:
python3 -m json.tool < journal.json
Gebruik de opdracht met het pad naar het uitgepakte bestand en stuur de uitvoer alleen om naar een nieuw bestand als je een aparte, mooi opgemaakte kopie wilt. De opdracht toont opgemaakte JSON als het parseren slaagt; bij een fout meldt Python waar de fout is opgetreden. Een geslaagde parse betekent dat de tekst geldige JSON is voor de parser. Het bewijst niet dat het bestand volledig is, dat de waarden de betekenis hebben die je verwacht of dat Day One het kan importeren. De documentatie van Python voor json beschrijft ook json.load() en json.loads() voor het lezen van een bestand of string.
Bekijk de daadwerkelijke structuur van het document
Begin bij het eerste niet-witruimteteken. Een openings-{ duidt op een object; [ duidt op een array. Klap in een opgemaakte kopie het hoogste niveau open en bekijk de namen van leden en de typen waarden. Arrays kunnen objecten bevatten; die objecten kunnen arrays of geneste objecten bevatten. Herhaalde objectstructuren kunnen helpen om mogelijke vermeldingsrecords te vinden, maar herhaling alleen bewijst niet wat het bedoelde schema van de exporteur is.
Zoek in de tekst naar een zin waarvan je weet dat die in een vermelding voorkomt en bekijk de omliggende accolades en waarden. Noteer de exacte sleutel naast de waarde in plaats van die op basis van een vermoeden te hernoemen. Een waarde die op een datum lijkt, kan een mogelijke datum zijn; een string die op een pad lijkt, kan een mogelijke bijlageverwijzing zijn. Behandel beide als onbevestigd totdat de documentatie van Day One of de context van de export zelf hun betekenis bevestigt. Behoud in je aantekeningen de oorspronkelijke spelling, interpunctie, escape-reeksen en waardetypen.
Interpreteer escape-tekens en mediaverwijzingen voorzichtig
Een zichtbare reeks zoals \n in een JSON-string stelt een geëscapete nieuwe regel voor; het zijn niet noodzakelijk twee tekens in de oorspronkelijke vermelding. Aanhalingstekens en backslashes worden ook geëscapet. Een parser kan “Regel één
Regel twee” weergeven als een string met een regeleinde, terwijl de JSON-tekst dat regeleinde codeert met \n. Vergelijk waarden in een viewer of parser zonder het bronbestand te bewerken.
Als een waarde op een mediabestandsnaam of relatief pad lijkt, controleer dan of er een overeenkomend bestand in de uitgepakte mediamappen staat. Noteer de exacte verwijzing en overeenkomst als waarneming, niet als bewijs dat de verwijzing in Day One correct werkt. Een ontbrekende overeenkomst kan komen door exportinstellingen, verschillen in naamgeving of andere details die niet alleen uit het veld blijken. Houd inventarislijsten apart van de oorspronkelijke export.
Houd een inspectieverslag bij en raad geen veldnamen
Een kleine tabel maakt onzekerheid expliciet en helpt iemand anders je controle te herhalen:
Een generiek JSON-object kan bijvoorbeeld {"text":"A note","date":"2024-05-06","attachment":"photos/example.jpg"} bevatten. Dit zijn alleen illustratieve namen en waarden en geen bewering over het schema van Day One. Behoud de oorspronkelijke waarde ongewijzigd in je aantekeningen; zet datumnotaties niet om, los paden niet op basis van giswerk op en verwijder geen onbekende leden.
Inhoud van de container: bestandsnamen en mappen die na het uitpakken aanwezig zijn
JSON-structuur: waargenomen type op het hoogste niveau en nesting
Mogelijke waarde: exacte sleutel, waardetype en een kort fragment
Mogelijke betekenis: “mogelijke tekst/datum/bijlage”; markeer als onbevestigd
Bijbehorende media: exact pad en of er een overeenkomend bestand is gevonden
Weet wat inspectie niet kan aantonen
Geldige syntaxis bewijst niet dat de export elke geselecteerde vermelding of bedoeld mediabestand bevat. Een mogelijke bijlagewaarde bewijst niet dat het genoemde bestand aanwezig is, en het vinden van een bestand met een vergelijkbare naam bevestigt niet hoe importeren werkt. De handleiding van Day One noemt JSON een formaat voor archivering en opnieuw importeren, maar een alleen-lezen inspectie is geen hersteltest. Raadpleeg de actuele instructies van Day One als je zekerheid wilt over overdraagbaarheid of herstel. Voer eventuele importcontroles afzonderlijk uit met een veilige kopie en bewaar de onaangeroerde export.
