---
title: "Uw documenten, geopend: wat de motor las, wat u aanpaste, en het bewijs van elke wijziging."
seo_title: "Uw documenten: röntgenfoto, edities en bewijs | SazAI"
description: "Elk document met volledige röntgenfoto, edities gekoppeld aan origineel, en bewijs van elke wijziging."
tags: [marketing]
---

> Een bestand dat u opent is een ding; een document dat u kunt controleren is iets anders. Wat tussen beide verandert is het lezen dat bij binnenkomst gebeurt, eenmaal, en alles wat op record blijft omdat het gebeurde.

<div class="chap">

<div class="ico-col"><sz-icon style="color:var(--verb-see)" name="file" size="36"></sz-icon></div>

<h2 id="unit">De eenheid van uw format</h2>

<h3 class="sub">Het gesprek verandert woord omdat de eenheid van aard verandert</h3>

Een presentatie heeft dia's. Een document heeft secties. Een spreadsheet heeft werkbladen. Een PDF heeft pagina's, die al de uiteindelijke weergave zijn en geen ruimte die nog moet worden ingedeeld. De schermen en de agent gebruiken het woord dat uw format gebruikt, niet het woord van het meest voorkomende format.

<figure class="viz duo four" role="group" aria-label="De eenheid van elk format: dia in de presentatie, sectie in het document, werkblad in de spreadsheet, pagina in de PDF">
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:44px;height:44px"><rect x="3" y="4" width="18" height="13" rx="1"/><line x1="9" y1="21" x2="15" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg><b>dia</b>presentatie</div>
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:44px;height:44px"><path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"/><polyline points="13 2 13 9 20 9"/><line x1="8" y1="13" x2="16" y2="13"/><line x1="8" y1="17" x2="14" y2="17"/></svg><b>sectie</b>document</div>
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:44px;height:44px"><rect x="3" y="3" width="18" height="18" rx="1"/><line x1="3" y1="9" x2="21" y2="9"/><line x1="3" y1="15" x2="21" y2="15"/><line x1="9" y1="3" x2="9" y2="21"/></svg><b>werkblad</b>spreadsheet</div>
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:44px;height:44px"><path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"/><polyline points="13 2 13 9 20 9"/><rect x="8" y="12" width="8" height="6" rx="1"/></svg><b>pagina</b>PDF</div>
</figure>

Tekstdocumenten zijn het geval waar twee woorden nodig zijn, en het is de moeite waard om uit te leggen waarom. Een document wordt geteld in pagina's, wat u ziet en wat u zou uitspreken. Het wordt geanalyseerd per sectie, en een sectie hier is een lay-outbreuk: paginagrootte, oriëntatie, marges, kopteksten, kolommen. Een document zonder expliciete breuk heeft een enkele sectie, dus voor een gewoon bedrijfsdocument werkt het diepe onderzoek per document, niet per pagina. Dat verschil wordt gesteld, niet gladgestreken.

</div>

<div class="chap">

<div class="ico-col"><sz-icon style="color:var(--verb-see)" name="search" size="36"></sz-icon></div>

<h2 id="x-ray">De röntgenfoto, volledig</h2>

<h3 class="sub">Een lezen, bij binnenkomst, en alles wat het pakket draagt krijgt een adres</h3>

Een Office-bestand is een pakket, en SazAI Corpus leest het hele pakket, eenmaal, via een motor die de formaatspecificatie leest en niet interpreteert. De <dfn tabindex="0" data-hint="Al het tekst in het document, elke passage gekoppeld aan de dia en de vorm waarvan het afkomstig is. Eenmaal geextraheerd, zonder interpretatie.">röntgenfoto</dfn> is wat uit dat lezen voortkomt, en het is completer dan de presentatie liet zien.

<figure class="viz duo four xray" role="group" aria-label="Wat het lezen van een Office-pakket oplevert: tekst met herkomst, opmerkingen met status, notities en verborgen dia's, documenteigenschappen">
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="8" y="8" width="32" height="22" rx="2" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="14" y1="16" x2="30" y2="16" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="14" y1="22" x2="26" y2="22" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><circle cx="34" cy="36" r="3" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="34" y1="30" x2="34" y2="33" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="30" y1="22" x2="34" y2="30" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none" stroke-dasharray="2 2"/></svg><b>tekst met herkomst</b>elke passage, de dia en de vorm waarvan het afkomstig is</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><path d="M10 10h28a2 2 0 0 1 2 2v16a2 2 0 0 1-2 2H22l-8 7v-7h-4a2 2 0 0 1-2-2V12a2 2 0 0 1 2-2z" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><circle cx="18" cy="20" r="1.6" fill="currentColor"/><circle cx="24" cy="20" r="1.6" fill="currentColor"/><circle cx="30" cy="20" r="1.6" fill="currentColor"/></svg><b>opmerkingen met status</b>auteur, anker, thread, opgelost, met een taak</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="8" y="8" width="32" height="20" rx="2" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><rect x="8" y="32" width="32" height="8" rx="1.5" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none" stroke-dasharray="3 2"/><line x1="14" y1="36" x2="30" y2="36" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><circle cx="35" cy="14" r="2" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="31" y1="18" x2="39" y2="10" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/></svg><b>notities en verborgen</b>wat de presentator ging zeggen, en wat ze verborg</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><path d="M14 6h14l8 8v28H14z" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><path d="M28 6v8h8" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="19" y1="24" x2="31" y2="24" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="19" y1="30" x2="31" y2="30" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="19" y1="36" x2="26" y2="36" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><circle cx="12" cy="12" r="4" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="12" y1="10" x2="12" y2="12.5" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/><line x1="12" y1="12.5" x2="13.6" y2="13.6" stroke="currentColor" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round" fill="none"/></svg><b>eigenschappen</b>wie het maakte, wanneer het werd herzien, wat veranderde</div>
</figure>

Elk stuk tekst blijft gekoppeld aan de dia en de vorm waarvan het afkomstig is, met de opmaak die het draagt. Opmerkingen komen met auteur, anker, antwoordthread en de twee statussen die ertoe doen: opgelost en met een taak. De sprekernotities zijn volledig. Links, afbeeldingen en verborgen dia's verschijnen allemaal, en de dia die iemand verborg verschijnt ook voor u, gemarkeerd als verborgen. De eigenschappen zeggen wie het maakte en wanneer het werd herzien.

De zin die iemand in de zevende presentatie plakte, en niemand weet waar het vandaan kwam: de röntgenfoto weet het. Dat is wat het nuttig maakt voor controle, omdat elke uitspraak in het document een adres heeft, en het adres hoort bij het bestand, niet bij onze mening erover. Niets verder dan wat daar is.

</div>

<div class="chap">

<div class="ico-col"><span class="ico" style="color:var(--verb-see)"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="8" y="26" width="7" height="14" rx="1.5" fill="none" stroke="currentColor" stroke-width="1.5"/><rect x="20.5" y="14" width="7" height="26" rx="1.5" fill="none" stroke="currentColor" stroke-width="1.5"/><rect x="33" y="20" width="7" height="20" rx="1.5" fill="none" stroke="currentColor" stroke-width="1.5"/></svg></span></div>

<h2 id="signals">Wat de motor mat</h2>

<h3 class="sub">Een deck weet dat het zichzelf herhaalt voordat u dat doet</h3>

De motor meet het hele document en slaat het resultaat op onder de <dfn tabindex="0" data-hint="Het record van welk bestand wat produceerde: elke run houdt bij waar het vandaan kwam en wat het produceerde.">lineage</dfn> van die run, dat wil zeggen, welk bestand wat produceerde. De <dfn tabindex="0" data-hint="Wat de motor mat bij upload, genoemd: vrijwel identieke dia's, een titel die niet bij de inhoud past, tekst die uit de doos zal overlopen, gemengde taal.">signalen</dfn> hebben namen:

<figure class="viz duo four" role="group" aria-label="Vier genoemde signalen: vrijwel identieke dia's, een titel die niet bij de inhoud past, tekst die uit de doos overloopt, gemengde taal">
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="6" y="10" width="26" height="20" rx="2" fill="none" stroke="currentColor" stroke-width="1.25"/><rect x="16" y="18" width="26" height="20" rx="2" fill="none" stroke="currentColor" stroke-width="1.25"/></svg><b>vrijwel identiek</b>binnen een deck en over de twaalf</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="8" y="9" width="32" height="8" rx="1.5" fill="none" stroke="currentColor" stroke-width="1.25"/><line x1="10" y1="25" x2="38" y2="25" stroke="currentColor" stroke-width="1.25"/><line x1="10" y1="32" x2="38" y2="32" stroke="currentColor" stroke-width="1.25"/><line x1="10" y1="39" x2="28" y2="39" stroke="currentColor" stroke-width="1.25"/><line x1="34" y1="42" x2="42" y2="20" stroke="currentColor" stroke-width="1.25"/></svg><b>titel niet gelijk aan inhoud</b>wat het belooft en wat het zegt</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="6" y="12" width="26" height="24" rx="2" fill="none" stroke="currentColor" stroke-width="1.25"/><line x1="11" y1="20" x2="27" y2="20" stroke="currentColor" stroke-width="1.25"/><line x1="11" y1="27" x2="42" y2="27" stroke="currentColor" stroke-width="1.25"/><line x1="11" y1="34" x2="20" y2="34" stroke="currentColor" stroke-width="1.25"/></svg><b>zal overlopen</b>de doos, eenmaal vertaald</div>
<div class="side"><svg viewBox="0 0 48 48" aria-hidden="true"><rect x="6" y="8" width="36" height="32" rx="2" fill="none" stroke="currentColor" stroke-width="1.25"/><line x1="12" y1="17" x2="36" y2="17" stroke="currentColor" stroke-width="1.25"/><line x1="12" y1="24" x2="30" y2="24" stroke="currentColor" stroke-width="1.25"/><line x1="12" y1="31" x2="36" y2="31" stroke="currentColor" stroke-width="1.25" stroke-dasharray="2 2"/></svg><b>gemengde taal</b>en een term gespeld op twee verschillende manieren</div>
</figure>

Deterministisch, en zonder mening. De motor zegt u dat de derde en negende presentatie bijna identiek zijn; wat u eraan doet is een gesprek met [de agent](talk). De metingen voor elk document blijven beschikbaar voor lezen over documenten heen, dus een hele portefeuille kan worden gelezen zonder elk bestand afzonderlijk te openen.

</div>

<div class="chap">

<div class="ico-col"><sz-icon style="color:var(--verb-see)" name="compare" size="36"></sz-icon></div>

<h2 id="editions">Edities en vergelijking</h2>

<h3 class="sub">Drie relaties verklaard voordat het eerste getal</h3>

Uw voorstel zit in de vierde versie en niemand herinnert zich wat de derde versie zei. Elke <dfn tabindex="0" data-hint="Een vertaling of herzioning van uw document, opgeslagen als een compleet document, met zijn eigen röntgenfoto en meting.">editie</dfn> van u, vertaling of herzioning, gaat de documentbibliotheek in als een compleet document, met zijn eigen röntgenfoto en meting. Vergelijken zet uw origineel in de eerste kolom, altijd, en verklaart de relatie tussen de twee voordat de eerste verschil wordt weergegeven: vertaling, herzioning of onafhankelijk.
Zonder verklarende relatie verschijnt de vergelijking niet.

<figure class="viz duo cmp" role="group" aria-label="Het origineel in de eerste kolom, de verklarende relatie in het midden, de editie ernaast">
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:56px;height:56px"><rect x="3" y="4" width="18" height="13" rx="1"/><line x1="9" y1="21" x2="15" y2="21"/><line x1="12" y1="17" x2="12" y2="21"/></svg><b>uw origineel</b>altijd in de eerste kolom</div>
<div class="mid"><svg viewBox="0 0 120 72" aria-hidden="true"><rect x="8" y="18" width="30" height="38" rx="4" fill="var(--verb-see)" opacity=".12" stroke="var(--verb-see)" stroke-width="1.5"/><rect x="82" y="18" width="30" height="38" rx="4" fill="none" stroke="var(--verb-see)" stroke-width="1.5"/><line x1="38" y1="37" x2="82" y2="37" stroke="var(--gray)" stroke-width="1.5"/><rect x="45" y="28" width="30" height="18" rx="9" fill="var(--verb-see)" opacity=".14" stroke="var(--verb-see)" stroke-width="1.5"/><circle cx="60" cy="37" r="2.5" fill="var(--verb-see)"/></svg><b>de relatie, verklaard</b>vertaling, herzioning, onafhankelijk</div>
<div class="side"><svg viewBox="0 0 24 24" fill="none" stroke="var(--verb-see)" stroke-width=".75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" style="width:56px;height:56px"><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 1 1 3 3L7 19l-4 1 1-4Z"/></svg><b>de editie</b>een compleet document, met zijn eigen röntgenfoto</div>
<div class="act"><sz-button variant="primary" icon="compare" data-open-compare>Open de comparator</sz-button><sz-compare title="Aula 05 · Forecasting" demo></sz-compare></div>
</figure>

En wat de vergelijking u teruggeeft is geen indruk: in een 45-dia editie, 633 elementen ervoor en 633 erna. De tekst veranderde; de structuur niet. Geteld, niet geschat. Het verschil tussen dit en twee bestanden naast elkaar openen is dat het resultaat per eenheid op record blijft en later kan worden heropend, door iemand anders, zonder het werk opnieuw te doen en zonder afhankelijk te zijn van wie de vergelijking uitvoerde.

</div>

<div class="chap">

<div class="ico-col"><sz-icon style="color:var(--verb-see)" name="users" size="36"></sz-icon></div>

<h2 id="lineage">Origineel en afgeleide blijven gekoppeld</h2>

<h3 class="sub">De relatie overleeft het vertrek van wie het maakte</h3>

Wanneer het ene document het andere voortbrengt, wordt de koppeling vastgelegd, en de afgeleide is een compleet knooppunt met dezelfde behandeling als het origineel: het wordt door de motor gelezen, gemeten en afzonderlijk navigeerbaar.

Dit lost een probleem op dat klein lijkt en niet is. In een map zijn het origineel en de vijf vertalingen zes bestanden die slechts één persoon weet te relateren, en slechts totdat ze van team veranderen. Hier zijn het één origineel met vijf verklarede derivaten, en niemand hoeft iets te onthouden om de relatie te reconstrueren.

Het record wordt niet achteraf geschreven door iemand die de operatie observeerde. Het wordt geboren uit de operatie zelf, daarom kan het er niet mee oneens zijn. Elk van deze koppelingen is ook een synaps in uw kluis, en de hele vorm die ze tekenen is [het netwerk dat uw kluis wordt](connectome).

</div>

<div class="chap">

<div class="ico-col"><sz-icon style="color:var(--verb-see)" name="file" size="36"></sz-icon></div>

<h2 id="receipt">Wat het bewijs bewijst, en wat niet</h2>

<h3 class="sub">Bewijs van controle, gesteld met zijn grens ernaast</h3>

Het <dfn tabindex="0" data-hint="Het record van wat veranderde en wat gelijk bleef in elke operatie, eenheid voor eenheid, op bestand gehouden en heropening.">bewijs</dfn> bewijst dat de operatie gebeurde, op welke versie, met welke parameters, en wat het veranderde. Een vertaling registreert volledigheid per segment, de toegepaste glossaristermen, en wat wel of niet in het uiteindelijke bestand terechtkwam. Een herschrijving registreert welke velden werden gewijzigd en welke behouden bleven.

Het bewijst niet dat het resultaat visueel goed uitziet, omdat het systeem structuur meet en niet naar de uiteindelijke pagina kijkt. Het is ook geen gecertificeerde controle: of deze geschiedenis aan een specifieke controlenoodzaak in uw sector voldoet is een vraag die we geval per geval beantwoorden, geen bewering die deze pagina doet.

Een skeptische koper stelt de vraag meestal rechtstreeks: de AI heeft iets gegenereerd, en nu, hoe weet ik dat ik het kan gebruiken. Het antwoord dat we liever geven is niet om vertrouwen in het model te vragen. Het is om te laten zien wat er met het bestand gebeurde.

</div>

Dit alles leeft in uw kluis, en niets leeft los: elk document is gekoppeld aan zijn edities, elke editie aan zijn bewijs, elke vergelijking aan beide zijden. Wie interpreteert wat is gemeten is [de agent](talk) van SazAI Corpus, die dezelfde kluis leest als u, met geen bron beyond yours.

<script type="module">
// The comparator is an INVITATION, not a panel: the component mounts collapsed and the
// button opens its modal through the public `open()`. `whenDefined` first, because the
// design-system runtime upgrades components lazily and a click before upgrade would find
// an unknown element with no `open` on it.
for (const b of document.querySelectorAll("[data-open-compare]")) {
  b.addEventListener("click", async () => {
    await customElements.whenDefined("sz-compare");
    b.closest("figure")?.querySelector("sz-compare")?.open();
  });
}
</script>
