diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 79cc67c..d841460 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -79,6 +79,9 @@ jobs: CI: true run: npm run test:coverage + - name: Build shared library and verify codebook contracts + run: npm run build_cc && npm run test:codebook + - name: Coding-scheme validation script run: npm run test:scheme diff --git a/docs/codebook-acceptance-2026-10-13.md b/docs/codebook-acceptance-2026-10-13.md new file mode 100644 index 0000000..b0cd8e8 --- /dev/null +++ b/docs/codebook-acceptance-2026-10-13.md @@ -0,0 +1,122 @@ +# Codebook-Abnahme vom 13.10.2026 + +Dieser Bericht beschreibt den früheren Paketstand `dcee6cc…`. Die aktuelle Formatkorrektur und Aspect-Abnahme steht im [ergänzenden Bericht](codebook-aspect-acceptance-2026-10-13.md). + +Die P2-Regression bei geschützten und wiederholten Leerzeichen ist behoben. +Die bisherige Studio-Ausgabe bleibt in den stabilen Referenzfällen erhalten; +die direkten Studio- und die asynchronen Kodierbox-Exporte liefern identische Dokumentinhalte. + +## Automatisierte Nachweise + +| Prüfung | Ergebnis | +| --- | --- | +| Generator | 1.206 Tests bestanden, keine übersprungen | +| Neue Editor-Matrix | 384 Kombinationen, jeweils ESM und CommonJS, allgemeine und Code-Instruktionen | +| Ursprüngliches Studio | 32 bestehende + 20 neue unabhängige JSON-/DOCX-Referenzfälle | +| Installierte Hosts | 4.654 Exportpaare: JSON und alle relevanten DOCX-Bestandteile identisch | +| Studio | 49 API- und 66 Frontendtests bestanden | +| Kodierbox | 58 Backend- und 60 Frontendtests bestanden | +| Builds | Bibliothek und alle vier Host-Builds erfolgreich | +| Lint | Keine Fehler; Bibliothek 18, Studio API 6 bestehende Warnungen | + +Alle 20 neuen Leerzeichenfälle waren vor dem Fix rot und danach grün. +Die vollständigen Host-Suiten wurden für diesen Fix nicht erneut ausgeführt. +Referenz: ursprünglicher Studio-Commit `2504265721a59c7c65425072951ce82ab16f0fb8`. +Die Laufzeitänderungen wurden mit Bibliothek `aa404bc2`, Studio `b12fd461` +und Kodierbox `92b88f30` geprüft; spätere Ergänzungen betreffen Tests, synthetische +Abnahmedokumente und Dokumentation. + +Paket: identischer lokal gepackter 4.1.0-Tarball in beiden Anwendungen. +SHA256: `dcee6cc39436baf91cf2558afedfbc202e044ca14dbf72c7bfdf4b381e5c0ccd`. +Alle installierten Paketdateien wurden mit dem Tarball verglichen; beide +Root-Locks und Studios API-Runtime-Lock enthalten dessen neue Integrität. + +## Echte Browserabläufe + +Beide gebauten Frontends wurden über einen lokalen Static-/API-Proxy mit ihren +unveränderten produktiven NestJS-Bundles ausgeführt. Die PostgreSQL-Datenbanken +wurden mit den vollständigen Repository-Migrationen frisch angelegt. Studio +verwendete Liquibase 4.33, Kodierbox die vorgesehene Version 4.28. Kodierbox nutzte +echtes Redis/Bull und einen isolierten Keycloak mit zwei synthetischen Identitäten. +Die Fixture-Einrichtung erfolgte über echte APIs; Kodierbox-VOCS und die +Jobdefinition wurden als erfundene Datensätze direkt in die Testdatenbank gesetzt. +Die erfolgreichen Exportabläufe enthielten keine API-/Auth-/Queue-Mocks. + +- **Studio:** JSON-/DOCX-Download, leere Auswahl gesperrt, Suche erhält Gesamtauswahl, + Dialog schließt nach Download, anonymer Zugriff 401, fremder Workspace 403, + Missing-Code 0 über reales Profil, Score-Abwahl und Schulungsfilter geprüft. +- **Kodierbox:** JSON-/DOCX über echte Jobanlage, Statusabfrage und Download; + Jobdefinitionspicker beschränkt auf A/ALIAS_00, ausgewähltes Missingprofil und + Score-Abwahl stimmen mit dem Download überein. Doppelauslösung ist gesperrt; + erneuter Versuch und Ende des Pollings beim Schließen funktionieren. +- **Fehlerzweige:** Studio-Exportfehler sowie Kodierbox-Anlage-, Status- und + Downloadfehler wurden gezielt im Browsernetzwerk injiziert. Meldung und + Freigabe für erneuten Versuch wurden geprüft; erfolgreicher Retry lief wieder + gegen die echte Queue. +- **Reale Zugriffsprüfungen:** Kodierbox weist anonyme und nicht zugewiesene Nutzer + ab (bestehender WorkspaceGuard: 401), fremde Job-Workspaces mit 403, fremde + ausgewählte Einheiten mit 404 und ungültiges Format/Boolean mit 400. Ein + erfolgreicher Download räumt sein Ergebnis auf; Folgeabruf liefert 404. +- Beide erfolgreichen Browser-Downloads sind in JSON und allen normalisierten + DOCX-Bestandteilen identisch. NBSP, schmales NBSP und doppelte Abstände bleiben + erhalten. Keine unbehandelten Browser-Ausnahmen in den bestandenen Abläufen. + +Testumgebung: PostgreSQL 16.11, Redis 7.4, Keycloak 26.7.3. Das ist keine +Produktions- oder Deployment-Abnahme; Kodierboxs PostgreSQL-14-Produktionsversion +wurde damit nicht separat geprüft. Der vorhandene Keycloak-JS-Adapter 23.0.7 +benötigte im Testrealm den dokumentierten Nonce-Kompatibilitätsmapper +([Keycloak Upgrade Guide](https://www.keycloak.org/docs/26.7.5/upgrading/index.html)). +Alle isolierten Testdienste wurden anschließend beendet und entfernt. + +## Microsoft Office + +Die tatsächlichen DOCX-Dateien wurden von **Microsoft Office Web Viewer / Word** +gerendert, ohne Office-Anmeldung. Es wurden ausschließlich erfundene, im +Bibliotheksbranch versionierte Testdokumente verwendet. + +| Dokument | Seiten | +| --- | ---: | +| Aktuelles Rich-Text-Dokument mit Scores | 3 | +| Ursprüngliches Studio mit Scores | 3 | +| Aktuelles Rich-Text-Dokument ohne Scores | 3 | +| Ursprüngliches Studio ohne Scores | 3 | +| Tatsächlicher Studio-Browser-Download | 3 | +| Tatsächlicher Kodierbox-Browser-Download | 3 | +| 48 Markierungskombinationen plus Formel/Listen/Bild | 2 | +| **Gesamt** | **20** | + +Tabellenspalten, Umbrüche, Bilder, Formeln, Markierungen und Fußzeilen/Seitenzahlen +wurden anhand der gerenderten Seiten geprüft. Alle sechs Seiteninhalte der +aktuellen/ursprünglichen Studio-Paare sind pixelgleich (Seitenbereich oberhalb +der Fußzeile; die vereinbarte Umbenennung zu „IQB Codebook“ wird separat geprüft). +Die beiden echten Browser-Dokumente sind auf allen drei vollständigen Seiten +pixelgleich. Es traten keine sichtbaren abgeschnittenen Inhalte oder defekten +Formeln/Bilder auf. Dies ist ein echter Microsoft-Word-Web-Nachweis; Windows- +oder macOS-Desktop-Word wurde nicht ausgeführt. + +## Aspect-Abgleich und Grenzen + +Quellabgleich mit `iqb-berlin/verona-modules-aspect@fb3f5982`: Die 384 Tests +umfassen alle Kombinationen der gemeinsamen vier Textmarkierungen, drei gültigen +Grundlinienzustände, zwei Verschachtelungsreihenfolgen und vier Ausrichtungen. +Der Codebook-Vertrag liest Kodierinstruktionen aus VOCS, nicht vollständige +Aspect-Aufgaben mit interaktiven Player-Elementen. Aspect-Formelknoten verwenden +einen anderen Vertrag als die IQB-Formeln des Instruktionseditors. Ein kompletter +Aspect-Editor-/Player-Browserlauf wurde nicht durchgeführt. + +Die bestehenden Studio-Grenzen bei CSS-Listenstilen, verschachtelten +Listeneinrückungen, Bild-Floats sowie innerhalb eines Absatzes wechselnder Farbe/ +Schriftgröße bleiben dokumentiert. Eine uneingeschränkte HTML-/CSS-Layouttreue +oder Unterstützung aller Aspect-Player-Knoten wird nicht behauptet. + +## Veröffentlichung und CI + +Alle drei Branches `shared-codebook` wurden committed und gepusht. Die offenen +PRs #239 (Bibliothek) und #1041 (Kodierbox) werden mit diesen Ergebnissen aktualisiert. +Studio-PR #1728 ist ohne Merge geschlossen; der Studio-Branch wurde aktualisiert. +Bibliotheks-CI war für `2925485` vollständig grün. Die CI der abschließenden +Dokumentationscommits wird separat angegeben. Kodierboxs zuletzt geprüfte +GitLab-Pipeline [103668](https://scm.cms.hu-berlin.de/iqb/coding-box/-/pipelines/103668) +für `92b88f30` ist fehlgeschlagen; die Jobursache bleibt hinter Bot-Schutz/ +Anmeldung unbestätigt. Lokale grüne Tests ersetzen diesen offenen CI-Status nicht. +Kein Merge, Release, Paket-Publish oder Rollout wurde ausgeführt. diff --git a/docs/codebook-aspect-acceptance-2026-10-13.md b/docs/codebook-aspect-acceptance-2026-10-13.md new file mode 100644 index 0000000..3b6ff65 --- /dev/null +++ b/docs/codebook-aspect-acceptance-2026-10-13.md @@ -0,0 +1,82 @@ +# Browser- und Word-Abnahme der Codebooks + +Die bestätigten Formatierungsfehler sind behoben. Der echte Aspect Editor und Player, der gemeinsame Instruktionseditor sowie Studio und Kodierbox wurden mit synthetischen Daten geprüft. Microsoft Office Web Viewer / Word hat 262 Seiten gerendert; die Aufnahmen jeder Seite sind mit deren tatsächlicher Fußzeile abgeglichen. + +## Umfang und Ergebnisse + +| Prüfung | Ergebnis | +| --- | --- | +| Aspect: HTML laden, Unit über die Oberfläche speichern, echter Verona-Player | 2.740 Formatfälle, 40 native Formeln | +| Gemeinsamer Editor: HTML laden, speichern und wiederöffnen | 2.738 unterstützte Formatfälle | +| Vollständige gültige Textmarkierungsmatrix je Editor | 2.496 = 16 Kombinationen aus fett/kursiv/unterstrichen/durchgestrichen × normal/tief/hoch × vier Ausrichtungen × 13 Schriftgrößen | +| Weitere Matrixfälle | 16 Farbgrenzen, neun Listenstile auf fünf Ebenen, 120 Absatzkombinationen, 16 Überschriften, Bildpositionen, Formeln, Sonderzeichen, Umbrüche und Zitate; Aspect zusätzlich Inlinebild und Trennlinien | +| Tatsächliche Toolbar-Bedienung | 57 Aspect- und 52 gemeinsame Editorfälle; jeweils alle 38 Sonderzeichen-Schaltflächen; gemeinsamer Formeldialog zusätzlich separat geprüft | +| HTML-Austausch in beiden Richtungen | Je 2.738 Fälle und 40 Formeln erhalten; Speichern/Wiederöffnen und echter Player erfolgreich | +| Austausch bis Word | In beiden Richtungen **alle normalisierten DOCX-Bestandteile identisch** zur tatsächlich in Word gerenderten Matrix | +| Generator | 1.245 Tests bestanden, keine übersprungen; ESM und CommonJS, mit und ohne Scores | +| Editor-Regressionsprüfungen | Gemeinsamer Editor 10 Tests; Aspect 16 Tests bestanden | +| Installationsvergleich | 4.654 Studio-/Kodierbox-Exportpaare: JSON und alle normalisierten DOCX-Bestandteile identisch | +| Host-Tests | Studio 49 API + 66 Frontend; Kodierbox 58 Backend + 60 Frontend bestanden | +| Builds | Bibliothek, frischer Aspect Editor/Player und alle vier Host-Builds erfolgreich | +| Installation | Identischer 4.1.0-Tarball in beiden Hosts; zusätzlich saubere Studio-Runtime-Installation mit 515 Paketen; alle 20 Paketdateien in allen drei Installationen bytegleich | + +Die große Matrix läuft über die tatsächlichen Tiptap-Parser und Serialisierungen. Die Bedienfälle prüfen zusätzlich echte Schaltflächen, Auswahllisten, Bilddateiauswahl und Speicherdialoge. Der gemeinsame MathLive-Dialog wird über seinen öffentlichen Eingabewert und das reale Input-Ereignis bedient. Die erfolgreichen Editor-, Player-, Authentifizierungs-, API- und Queue-Abläufe verwenden ihre echten Implementierungen. + +## Behobene Fehler + +- Normale Mehrfachabstände wurden beim Laden und Wiederöffnen reduziert. Normale, geschützte und schmale geschützte Leerzeichen bleiben erhalten; JSON-Inhalte und ausdrücklich gesetzte Parseroptionen funktionieren weiter. +- Farben, Schriftgrößen und Hervorhebungen wurden auf den ganzen Absatz ausgedehnt. Sie gelten jetzt nur für die jeweilige markierte Textstelle. CSS-Pixel und Punktangaben werden korrekt in Word-Halbpunkte umgerechnet. +- Absatzabstände, Einzüge, hängende Einzüge und formatierte Listen gingen im Word-Export verloren. Die gesetzten Attribute und Listenmarker bleiben erhalten. +- Einrückung und hängender Einzug funktionierten nach „Alles auswählen“ nicht; im gemeinsamen Editor scheiterte Absatzabstand an Textknoten. Beide Bedienpfade sind repariert. +- Inlinebilder wurden aus dem Text herausgezogen oder doppelt ausgegeben; gesetzte linke/rechte Bildpositionen gingen verloren. Word erhält die Platzierung einschließlich Textumlauf-Ankern. +- Aspect-Formeln wurden aus veraltetem MathLive-Anzeige-HTML gelesen; reine Formelinstruktionen konnten herausgefiltert werden. Beide Formel-HTML-Formate werden aus ihrem LaTeX verarbeitet, und der Instruktionsfilter erkennt reine Aspect-Formeln. +- Die Editoren erkannten beim HTML-Austausch jeweils nur ihren eigenen Formelknoten. Beide lesen nun beide Formate und speichern im eigenen kanonischen Format weiter. +- Über- und Unterstriche wurden als kurzer Akzent und teils an der falschen Position dargestellt. Native Word-Balken umfassen jetzt den ganzen Ausdruck. Bruchstriche, Wurzelzeichen und große Operatoren erhalten dieselbe Farbe und Größe wie die Formelzeichen; der Vorher-/Nachher-Nachweis wurde in Word tatsächlich geprüft. +- Schriftgröße, Farbe und Textmarkierungen um Formeln gingen im nativen Word-Mathematikformat verloren. Die umgebenden Eigenschaften werden auf native Mathematikläufe übertragen; der Formelcache bleibt unverändert und überträgt keine fremde Formatierung. +- Formelabsätze wurden immer links ausgerichtet; die gewählte Ausrichtung bleibt erhalten. Zeilenumbrüche innerhalb von LaTeX-Attributen werden nicht mehr in HTML-Break-Tags umgewandelt. +- Aspect erlaubte keine erneute Auswahl derselben Bilddatei. Das Dateifeld wird nach dem Auslesen geleert; die vier Bildpositionen wurden mit derselben Datei tatsächlich eingefügt. + +## Erhalt der bisherigen Studio-Ausgabe + +Die unabhängigen Referenzen stammen weiterhin vom ursprünglichen Studio-Commit `2504265721a59c7c65425072951ce82ab16f0fb8`. Die 32 bestehenden Rohschema-Referenzen und 20 Leerzeichenfälle wurden nicht aus der neuen Implementierung neu erzeugt. + +Grundlayout, Auswahlregeln, Scores, Missing-Codes, Beziehungen, Bilder und unveränderte Formatfälle bleiben gegen die alten vollständigen JSON-/DOCX-Referenzen abgesichert. Eine **bewusste Korrektur** betrifft den alten `Farbe`-Referenzabsatz: explizite `18pt` wurden früher als 18 Word-Halbpunkte, also 9pt, behandelt; nun werden korrekt 36 Halbpunkte ausgegeben. Der Vergleich normalisiert ausschließlich diesen streng geprüften Unterschied und die gleichwertige Hex-Schreibweise der Hervorhebung zurück. Alle anderen Dokumentbestandteile bleiben Gegenstand des ursprünglichen Hashvergleichs. Neue Tests prüfen die korrigierten Werte unmittelbar. + +Die frühere pixelgleiche Abnahme des Pakets `dcee6cc…` ist ein historischer Nachweis. Für das jetzige Paket gelten die oben beschriebenen gezielten Darstellungsfixes und die neue Word-Abnahme; eine pauschale Pixelgleichheit zu allen alten Fehlformatierungen wird nicht behauptet. + +## Microsoft Word + +| Dokument | Seiten | +| --- | ---: | +| Aspect: vollständige Formatmatrix | 114 | +| Gemeinsamer Editor: vollständige Formatmatrix | 114 | +| Aspect: Übersicht aller unterschiedlichen Formatmerkmale | 12 | +| Gemeinsamer Editor: Formatübersicht | 12 | +| Tatsächlich bediente Toolbarfälle und 13 kombinierte Formelschriftgrößen | 6 | +| Aktuelle Studio-Referenz mit korrigierter expliziter Schriftgröße | 3 | +| Farbige zusammengesetzte Formeln, breite Über-/Unterstriche | 1 | +| **Gesamt** | **262** | + +Alle Seiten wurden aus dem echten Microsoft-Viewer erfasst. Dessen wiederverwendete Bildkacheln wurden anhand ihrer Seitenposition erfasst; ein zusätzlicher OCR-Abgleich bestätigt die erwartete Seitennummer jeder Aufnahme. Die Formatübersichten und repräsentative Matrixseiten wurden visuell geprüft. Die vollständigen Matrixinhalte, Markierungen, Größen und Ausrichtungen sind zusätzlich im DOCX geprüft. Beide Richtungen des Editor-Austauschs ergeben exakt dieselben Word-Dokumentbestandteile wie die gerenderte gemeinsame Matrix. + +Die Galerie enthält sämtliche Seiten in Originalauflösung. Verwendet wurden ausschließlich erfundene, versionierte Abnahmedokumente; kein Office-Konto und keine Nutzerdaten waren nötig. Dies ist eine Microsoft-Word-Web-Abnahme. Desktop-Word unter Windows oder macOS wurde nicht ausgeführt. + +## Echte Host-Downloads + +Studio und Kodierbox exportieren drei synthetische Aufgaben mit insgesamt 5.479 Code-Instruktionen: beide vollständigen Editor-Matrizen und eine kombinierte formatierte Aspect-Formel. Beide gebauten Frontends laufen mit den produktiven NestJS-Bundles. Studio verwendet eine frisch migrierte PostgreSQL-Datenbank; Kodierbox zusätzlich echtes Redis/Bull und Keycloak. + +Studio prüft JSON/DOCX, leere Auswahl, Auswahl während der Suche, Dialogabschluss, 401/403 sowie sichtbare Fehler und erneuten Versuch. Kodierbox prüft echte Jobanlage, Status und Download, doppelte Auslösung, Anlage-/Status-/Downloadfehler, erneuten Versuch und das Ende des Pollings beim Schließen. Ausschließlich Fehlerzweige werden gezielt im Browsernetzwerk injiziert. Erfolgreiche Downloads sind in JSON und jedem normalisierten DOCX-Bestandteil identisch; geschützte und wiederholte Leerzeichen bleiben erhalten. + +Testdienste: PostgreSQL 16.11 mit Repository-Migrationen, Studio Liquibase 4.33 und Kodierbox 4.28, Redis 7.4 und Keycloak 26.7.3. Die vorhandene Keycloak-JS-Version 23.0.7 benötigt im isolierten Testrealm den Nonce-Kompatibilitätsmapper. Die Prüfung ist lokal; sie bestätigt keine Produktion oder Bereitstellung. Die vollständigen Host-Testsuiten wurden nicht erneut ausgeführt. + +Der Dokumentvergleich normalisiert ausschließlich die Datumsausgabe in der Fußzeile, unabhängig vom Ausführungstag. Ein eigener Test stellt sicher, dass Datumsangaben und Markenbezeichnungen im eigentlichen Nutzerinhalt erhalten bleiben. Zusätzlich sind explizite Listenstarts bei 0 und 7 abgesichert. + +## Paket und Abgrenzung + +Paket-SHA256: `0e355c3896799ae765cb6e90b00147da0359c56f5fdc90d36b7caf40fbe59ab8`. + +Die Abnahme betrifft Rich Text in Textinhalten und manuellen Kodieranweisungen. Interaktive Antwortfelder sind eigenständige Player-Elemente. Farben wurden über repräsentative Hex-/RGB-/Namenswerte, Bildpositionen mit synthetischen PNG-Dateien geprüft. Formatierte Listen erhalten im statischen Word-Codebook explizite Marker; sie werden dort nicht automatisch neu nummeriert. + +Lokale Tests, Browser-/Word-Abnahme, Push und entfernte CI sind getrennte Nachweise. Der aktuelle CI-Stand wird bei den Pull Requests dokumentiert; aus lokalen Erfolgen wird keine grüne GitLab-Pipeline abgeleitet. + +Versionierte synthetische Word-Dateien: `scripts/fixtures/word-acceptance/` im coding-components-Repository. Reproduzierbare Generator- und Formatprüfungen: `npm run build_cc && npm run test:codebook`; Host-Vergleich: `scripts/compare-codebook-installations.mjs`. Die vollständige lokale Galerie und maschinenlesbaren Ausführungsnachweise ergänzen diese Zusammenfassung. diff --git a/docs/shared-codebook.md b/docs/shared-codebook.md new file mode 100644 index 0000000..ce6b390 --- /dev/null +++ b/docs/shared-codebook.md @@ -0,0 +1,173 @@ +# Gemeinsames Codebook: Integrationsvertrag + +## Aktuelle Format- und Aspect-Abnahme + +Die [Browser- und Word-Abnahme vom 13.10.2026](codebook-aspect-acceptance-2026-10-13.md) ergänzt die frühere Leerzeichen-Abnahme um bestätigte Formatierungsfixes und den bidirektionalen Formel-Austausch. Aktuelles Paket-SHA256: `0e355c3896799ae765cb6e90b00147da0359c56f5fdc90d36b7caf40fbe59ab8`. 1.245 Generator-Tests, 4.654 installierte Exportpaare und 262 tatsächliche Microsoft-Word-Web-Seiten sind geprüft. Die explizite 18pt-Schriftgröße des alten `Farbe`-Referenzfalls wird bewusst korrigiert; alle übrigen alten Dokumentbestandteile bleiben streng verglichen. Angaben zu früheren Paketständen weiter unten sind historische Nachweise. + +Studio ist die Referenz für Bedienung und Dokumentlayout. Die drei Einstiegspunkte +`codebook-models`, `codebook-generator` und `codebook-export` trennen Daten, +frameworkfreie Dokumenterstellung und Angular-Oberfläche. Die Bibliothek enthält +keinen Jobvertrag, keine HTTP-Aufrufe und keinen Download-Dienst. + +## Anwendungen + +Studio lädt Aufgaben und Missingprofile, übergibt die aktive Aufgabe und seine +Speichersperre und verarbeitet `exportRequested` mit seinem direkten API-Aufruf. +Schulungsbedarf ist eine gemeinsame Auswahl und wird in beiden Anwendungen durch +denselben Generator anhand von CODER_TRAINING_REQUIRED gefiltert. +Die Kodierbox ergänzt ihren Jobdefinitionsfilter über `[codebookFilters]` und zeigt ihre +Jobzustände über `[codebookStatus]`. Das sind Projektionsflächen ohne Jobsemantik. +`loading` und `busy` sind allgemeine Sperrzustände. Nur die Kodierbox startet Jobs, +fragt Status ab und lädt Ergebnisse. Beim Schließen endet die Statusabfrage; +der Serverjob wird nicht abgebrochen. + +Die Übersetzungen der Oberfläche stehen im Host unter `codebook.*`. Beide Hosts +verwenden dieselben Studio-Beschriftungen und Tooltips. `selectionChanged`, +`exportRequested` und `cancel` sind die einzigen Ausgaben. Der Exportwunsch enthält +Aufgaben-IDs, fachliche Optionen und Missingprofil-ID. Die Profile tragen eine +numerische ID und eine Beschriftung; 0 bedeutet kein Profil. +`showGroupColumn` ist im Studio aktiv, in Kodierbox deaktiviert. +Während `loading` und `busy` ist jede Auswahl gesperrt. Verliert eine Aufgabe ihre +Verfügbarkeit, meldet selectionChanged auch die bereinigte Auswahl zurück. +Variablenbündel bleiben als bestehender Kodierbox-API-Vertrag erhalten, werden +aber im Codebook-Dialog nicht mehr angeboten (Issue #176). + +## Bewusste fachliche Korrekturen + +* Nur manuell: Variablen mit regulären manuell beschriebenen Codes; nur diese Codes. +* Nur geschlossen: Variablen mit RESIDUAL_AUTO oder INTENDED_INCOMPLETE; alle Codes. +* Beide: Vereinigung dieser Variablengruppen; alle Codes. +* Beide aus: keine Einschränkung nach dieser Kategorie. +* Nur mit Codes wird nach der Codeauswahl ausgewertet. +* Leere HTML-Strukturen, unsichtbare Zeichen und Leerzeichen sind keine Instruktion; + unterstützte Bilder und Formeln sind eine Instruktion. Allgemeine Instruktionen + allein machen keinen Code manuell. +* Code 0 und Missing 0 bleiben erhalten. Missing-Codes behalten ihren JSON-Datentyp + aus dem Profil (Zahl oder Zeichenkette); Kodierbox wandelt Zahlen nicht mehr in + Zeichenketten um. Leere Exporte liefern `[]` bzw. ein gültiges + DOCX. Fehlerhafte Schemen melden die betroffene Aufgabe. +* Aufgaben werden nach Schlüssel, Variablen nach Alias/ID sortiert; Codefolge bleibt. +* Schulungsbedarf: alle, nur mit oder nur ohne CODER_TRAINING_REQUIRED; kombiniert + mit der gemeinsamen Variablen-/Codeauswahl. +* BASE_NO_VALUE bleibt ausgeschlossen; abgeleitete Variablen folgen der Option. +* Itembeziehungen sind explizite `{id, variableId}`-Paare. Der Anwendungsadapter + normalisiert Quell-IDs auf die im Dokument verwendeten Aliase. +* Die Kennzeichnung lautet IQB Codebook. Studio-Formatierung, Tabellen, Seitenfelder, + eingebettete Bilder und Formelkonvertierung bleiben erhalten. Klartextinstruktionen + und Leerzeichen an Formatgrenzen werden nicht mehr verschluckt. Verschachtelte + Textmarkierungen bleiben kombiniert erhalten. Direkte Listentexte und Klartext + vor, zwischen und nach HTML-Absätzen werden in Quellreihenfolge übernommen; + bestehende Absatzinhalte, Bilder und Formeln erscheinen weiterhin genau einmal. + +## Paket und Laufzeit + +`npm run build_cc` erzeugt Angular-ESM sowie einen zusätzlichen CommonJS-Einstieg +für Server. Der Generator braucht weder Angular noch DOM/Browser-Globals. +Der CommonJS-Build integriert den ausschließlich als ESM gelieferten mathml2omml- +Konverter. Dessen Quellcode bleibt über Source Maps und das npm-Original verfügbar. + +Die Regeltextkonvertierung ist intern auf @iqb/responses 5.2.2 festgelegt. +Das ist ausdrücklich kein Upgrade der Kodierbox-Kodierengine: deren responses +5.2.0 und response-Spezifikation 1.5.1 bleiben unverändert. Die Bibliothek akzeptiert +response-Spezifikation 1.5.1 sowie 2.x als Peer. + +## Lokale Integration und Veröffentlichung + +Die beiden Integrationen referenzieren dieselbe gepackte Datei unter +`vendor/iqb-ngx-coding-components-4.1.0.tgz`. Das ist ein lokal prüfbarer Release- +Kandidat, noch keine veröffentlichte npm-Version. Zum Release wird genau der +abgenommene Bibliotheksstand veröffentlicht; danach werden die Host-Abhängigkeiten +auf die Registry-Version umgestellt und Locks neu geprüft. Die lokalen Tarballs +können dann entfernt werden. Beide Anwendungen gemeinsam abnehmen und ausrollen. +Rollback: vorherige Bibliotheks-/Anwendungsversion; keine Datenmigration. + +## Prüfungen + +* `npm run test:codebook`: Node-Vertragstests für alle Filterkombinationen, Daten, + JSON, DOCX-Struktur, Bilder, Formeln, Itembeziehungen und CJS/ESM-Gleichheit. +* `npm run test:cc`: Angular-Tests einschließlich Auswahl/Suche/Sperrzustände. +* Beide Hosts testen ihre echten Adapter und bestehenden Formelregressionen. +* Die künstlichen Fälle in `scripts/fixtures/codebook-synthetic.mjs` enthalten keine + Aufgabeninhalte aus den Beispiel-ZIPs. Die Matrix durchläuft alle 256 Kombinationen + der acht Ja/Nein-Optionen, drei Schulungsfilter, drei Missing-Konstellationen und + beide Formate: 4.608 Exporte. Alle neun Quelltypen werden in der Datenauswahl geprüft. +* 32 zusätzliche Referenzfälle vergleichen Rohschema → JSON und sämtliche relevanten + DOCX-Bestandteile mit dem ursprünglichen Studio. Die Referenz wird ausschließlich + aus dem dokumentierten alten Studio-Commit erzeugt, niemals aus dem neuen Generator. +* Weitere 20 Studio-Referenzfälle erhalten NBSP, schmale geschützte Leerzeichen und + wiederholte Abstände in allgemeinen und Code-Instruktionen, jeweils mit und ohne + Score-Spalte. HTML-Zeichenreferenzen, Unicode und fett formatierter Text werden + über ESM und CommonJS auf exakte Inhalte und alle DOCX-Bestandteile geprüft. +* `node scripts/compare-codebook-installations.mjs STUDIO_ROOT BOX_ROOT OUTPUT_DIR` + prüft dieselbe Matrix über Studios DownloadWorkspacesClass und Kodierboxs echten + Generation-Service samt Adapter mit Datenquellen im jeweiligen Anwendungsformat. + Nur Datenbank-/Profilzugriffe werden im Speicher bereitgestellt. Der Vergleich + schließt Bilder, Beziehungen, Styles, Fußzeilen und Missing-Datentypen ein. + Zusätzlich laufen die 20 Abstandsreferenzen in beiden Formaten gegen das alte + Studio; zusammen werden 4.654 Exportpaare verglichen. + Das ist ausdrücklich kein HTTP-, Browser-, Berechtigungs- oder Redis-End-to-End-Test. +* Studio-Frontend prüft direkten Export, Ladezustände, Fehlermeldung und Speichersperre. +* Kodierbox prüft Scope-Filter, wiederholte Starts, langsame Statusabfragen und Schließen. +* Frontend- und Backend-Prüfungen auf dem Entwicklungsrechner nacheinander ausführen. +* Vor Ausrollen bleiben visuelle Mehrseiten-DOCX-Abnahme und Host-Browserabläufe + einschließlich Netzwerkprüfung verpflichtend. + +### Microsoft Office + +Microsoft Office Web Viewer / Word hat am 13.10.2026 sieben ausschließlich +synthetische Dokumente mit insgesamt 20 Seiten gerendert. Die Host-Browser- +Downloads sind auf allen drei vollständigen Seiten pixelgleich. Die alten und +neuen Studio-Rich-Text-Dokumente sind mit/ohne Scores in ihren sechs +Seiteninhalten pixelgleich; die vereinbarte Fußzeile wird separat geprüft. +Details und Grenzen: [Abnahmeprotokoll](./codebook-acceptance-2026-10-13.md). + +XML-Gleichheit und LibreOffice-Rendering allein ersetzen keinen Office-Nachweis. +Für einen zusätzlichen Windows-Desktop-Word-Abnahmeweg legt der +Installationsvergleich künstliche Exporte +sechs DOCX-Dateien und `word-expectations.json` im Ausgabeverzeichnis ab: je Anwendung +einen Filter-/Missing-0-Fall sowie Rich-Text-Fälle mit und ohne Score-Spalte. Die +Rich-Text-Fälle werden zusätzlich direkt gegen die alte Studio-Referenz geprüft. +Auf einem Windows-Rechner mit Desktop-Word: + +```powershell +./scripts/verify-codebook-word-windows.ps1 -Directory C:\Codebook-Pruefung +``` + +Das Skript öffnet alle Dateien regulär und schreibgeschützt, aktualisiert Felder, +prüft Textgleichheit, Seitenzahl, Tabellen, ungeteilte Zeilen, Bilder, Formeln und +Fußzeilen und exportiert sechs PDFs. Es speichert Word-Version und Build im Ergebnis. +Anschließend alle gerenderten Dokumente vollständig visuell prüfen: insbesondere +Spaltenbreiten, Umbrüche, Formeln, Bilder, Schriften und „Seite X von Y“. +`visualAcceptanceComplete` bleibt bis zur tatsächlichen visuellen Abnahme false. +Eine nicht ausgeführte Windows-Prüfung darf nicht als bestanden gemeldet werden. + +### Editor-/Player-Abgleich und Formatkombinationen + +Die Instruktionen des coding-components-Editors sind der Eingabevertrag des +Codebook-Exports. Die Extension-Liste wurde mit Aspect Editor/Player bei +`iqb-berlin/verona-modules-aspect@fb3f5982` abgeglichen. Der Export liest +Kodierschemata (`manualInstruction`), nicht die vollständige Aspect-Aufgabe mit +interaktiven Player-Elementen. + +`codebook-editor-matrix.test.mjs` prüft alle 384 Kombinationen aus vier +Textmarkierungen (Fett, Kursiv, Unterstrichen, Durchgestrichen), drei gültigen +Grundlinienzuständen, zwei Verschachtelungsreihenfolgen und vier Ausrichtungen. +Jeder Fall prüft allgemeine und Code-Instruktion, geschützte und wiederholte +Leerzeichen, Formatierungsgrenzen sowie identische ESM-/CommonJS-Dokumentteile. +Diese Matrix ergänzt die 52 unabhängigen Alt-Studio-Referenzfälle. + +`node scripts/create-codebook-editor-office-fixture.mjs` erzeugt ein ausschließlich +synthetisches Dokument mit allen 48 Markierungskombinationen sowie gemischten +Formel-, Listen- und Bildfällen zur visuellen Office-Abnahme. + +Grenzen des bestehenden Studio-Renderers bleiben sichtbar: CSS-Listenstile, +verschachtelte Listeneinrückungen, Bild-Floats und pro Textlauf wechselnde +Farbe/Schriftgröße werden nicht vollständig wie im Browser abgebildet. Der +Abgleich behauptet deshalb keine vollständige HTML-/CSS-Layouttreue. +Aspect-spezifische Formelknoten (`aspect-nodeview-math-formula[formula]`) und +interaktive Cloze-Knoten sind ein anderer Vertrag als +`span.iqb-math-formula[data-latex]` bzw. `[[iqb-math:…]]` in Kodierinstruktionen. +Der Aspect-Player rendert seine gespeicherten Formeln über +`projects/common/utils/math-formula-markup.ts`; der Codebook-Export nutzt OMML. +Ein vollständiger Aspect-Editor-/Player-Lauf ist damit nicht durch diese +Codebook-Matrix ersetzt. diff --git a/package-lock.json b/package-lock.json index 47d4fc1..3aa994a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -65,13 +65,19 @@ "@tiptap/extension-underline": "^2.27.2", "@tiptap/pm": "^2.27.2", "@types/jasmine": "~4.3.0", + "@types/katex": "^0.16.8", "@types/node": "^20.4.4", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", + "buffer": "^6.0.3", + "cheerio": "^1.1.2", + "docx": "^8.5.0", + "esbuild": "0.28.1", "eslint": "^8.57.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^18.0.0", "eslint-plugin-import": "^2.32.0", + "image-size": "^1.2.1", "iqb-dev-components": "^1.4.1", "jasmine-core": "~4.6.0", "karma": "~6.4.0", @@ -79,6 +85,7 @@ "karma-coverage": "~2.2.0", "karma-jasmine": "~5.1.0", "karma-jasmine-html-reporter": "~2.1.0", + "mathml2omml": "^0.5.0", "ng-packagr": "^21.2.7", "ngx-build-plus": "^20.0.0", "ngx-tiptap": "^12.0.0", @@ -4605,9 +4612,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4761,9 +4765,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4781,9 +4782,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -4801,9 +4799,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4821,9 +4816,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4841,9 +4833,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4861,9 +4850,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -4881,9 +4867,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5464,9 +5447,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5485,9 +5465,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5506,9 +5483,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5527,9 +5501,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5548,9 +5519,6 @@ "riscv64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5569,9 +5537,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5590,9 +5555,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5611,9 +5573,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5835,9 +5794,6 @@ "arm" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5859,9 +5815,6 @@ "arm" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5883,9 +5836,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5907,9 +5857,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5931,9 +5878,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5955,9 +5899,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6347,9 +6288,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6367,9 +6305,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6387,9 +6322,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6407,9 +6339,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6630,9 +6559,6 @@ "arm" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6647,9 +6573,6 @@ "arm" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6664,9 +6587,6 @@ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6681,9 +6601,6 @@ "arm64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6698,9 +6615,6 @@ "loong64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6715,9 +6629,6 @@ "loong64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6732,9 +6643,6 @@ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6749,9 +6657,6 @@ "ppc64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6766,9 +6671,6 @@ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6783,9 +6685,6 @@ "riscv64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -6800,9 +6699,6 @@ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6817,9 +6713,6 @@ "x64" ], "dev": true, - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -6834,9 +6727,6 @@ "x64" ], "dev": true, - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -7849,6 +7739,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/katex": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.8.tgz", + "integrity": "sha512-trgaNyfU+Xh2Tc+ABIb44a5AYUpicB3uwirOioeOkNPPbmgRNtcWyDeeFRzjPZENO9Vq8gvVqfhaaXWLlevVwg==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/linkify-it": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", @@ -8955,6 +8852,27 @@ "dev": true, "license": "MIT" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/base64id": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", @@ -9143,6 +9061,31 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -9380,6 +9323,106 @@ "dev": true, "license": "MIT" }, + "node_modules/cheerio": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.1.2.tgz", + "integrity": "sha512-IkxPpb5rS/d1IiLbHMgfPuS0FgiWTtFIm/Nj+2woXDLTZ7fOT2eqzgYbdMlLweqlHbsZjxEChoVK+7iph7jyQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.2.2", + "encoding-sniffer": "^0.2.1", + "htmlparser2": "^10.0.0", + "parse5": "^7.3.0", + "parse5-htmlparser2-tree-adapter": "^7.1.0", + "parse5-parser-stream": "^7.1.2", + "undici": "^7.12.0", + "whatwg-mimetype": "^4.0.0" + }, + "engines": { + "node": ">=20.18.1" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/css-select": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.2.2.tgz", + "integrity": "sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio-select/node_modules/css-what": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.2.2.tgz", + "integrity": "sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/cheerio/node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, "node_modules/chokidar": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", @@ -10376,6 +10419,42 @@ "node": ">=6.0.0" } }, + "node_modules/docx": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/docx/-/docx-8.5.0.tgz", + "integrity": "sha512-4SbcbedPXTciySXiSnNNLuJXpvxFe5nqivbiEHXyL8P/w0wx2uW7YXNjnYgjW0e2e6vy+L/tMISU/oAiXCl57Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "^20.3.1", + "jszip": "^3.10.1", + "nanoid": "^5.0.4", + "xml": "^1.0.1", + "xml-js": "^1.6.8" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/docx/node_modules/nanoid": { + "version": "5.1.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.16.tgz", + "integrity": "sha512-kVrnsrJqMR8+oLJnGEmSWw9BivK5mt7H3FZatVRjrc5wGqFYuBxX1yG7+A7Gi5AefkX6t/oCkizcQgpu0cY1dQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, "node_modules/dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", @@ -10504,6 +10583,33 @@ "node": ">= 0.8" } }, + "node_modules/encoding-sniffer": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz", + "integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "^0.6.3", + "whatwg-encoding": "^3.1.1" + }, + "funding": { + "url": "https://github.com/fb55/encoding-sniffer?sponsor=1" + } + }, + "node_modules/encoding-sniffer/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/engine.io": { "version": "6.6.10", "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.10.tgz", @@ -12519,6 +12625,27 @@ "postcss": "^8.1.0" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, "node_modules/ignore": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", @@ -12581,6 +12708,29 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "dev": true, + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true, + "license": "MIT" + }, "node_modules/immutable": { "version": "5.1.9", "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.9.tgz", @@ -13599,6 +13749,59 @@ ], "license": "MIT" }, + "node_modules/jszip": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.2.tgz", + "integrity": "sha512-3l+rb15IOWtUhU0H5MFqES/T6Kh7abYwjosBey/vD6hDt8zoEffkSC5Ws5SGtgVw3gBx2NEbhTeSW1+kWkpyTQ==", + "dev": true, + "license": "(MIT OR GPL-3.0-or-later)", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/jszip/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/jszip/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/karma": { "version": "6.4.4", "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz", @@ -14246,6 +14449,16 @@ } } }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "immediate": "~3.0.5" + } + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -14743,6 +14956,13 @@ "node": ">= 18" } }, + "node_modules/mathml2omml": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mathml2omml/-/mathml2omml-0.5.0.tgz", + "integrity": "sha512-4eLs37a+TH+CL/M5XZZrlc75SNRJNPiZzIaeSSvH0UFCRaCdSYRHWvrlA7MUbeQks/z4sVhfg+GlcZhVVUHzqg==", + "dev": true, + "license": "LGPL-3.0-or-later" + }, "node_modules/mdurl": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.1.0.tgz", @@ -16067,6 +16287,13 @@ "node": "^20.17.0 || >=22.9.0" } }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true, + "license": "(MIT AND Zlib)" + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -16156,6 +16383,85 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz", + "integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "domhandler": "^5.0.3", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-parser-stream": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz", + "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==", + "dev": true, + "license": "MIT", + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-parser-stream/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/parse5-parser-stream/node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, "node_modules/parse5-sax-parser": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-8.0.0.tgz", @@ -16980,6 +17286,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "~2.0.3" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -17711,7 +18027,6 @@ "integrity": "sha512-42tBVwLWnaQvW5zc4HbZrTuWccECCZfBi92FDuwtqxasH+JbPB3/FOKb1m222K42R4WxuxzzMsTswfzgtSu64Q==", "dev": true, "license": "BlueOak-1.0.0", - "optional": true, "engines": { "node": ">=11.0.0" } @@ -18023,6 +18338,13 @@ "node": ">= 0.4" } }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true, + "license": "MIT" + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -20397,6 +20719,43 @@ "node": ">=0.8.0" } }, + "node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -20612,6 +20971,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==", + "dev": true, + "license": "MIT" + }, + "node_modules/xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/package.json b/package.json index c41a855..df1e38b 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "build:elements": "ng build --project coding-components -c elements", "serve:elements": "npx http-server dist/coding-components-elements -p 8081", "buildxx": "ng run coding-components:build", - "build_cc": "rm -rf dist/ngx-coding-components && ng build ngx-coding-components", + "build_cc": "rm -rf dist/ngx-coding-components && ng build ngx-coding-components && node scripts/build-codebook-node.mjs", "build": "npm run build_cc && npm run start", "build_sc": "rm -f dist/*.* && rm -rf dist/schemer && ng build --project schemer --output-hashing=none", "pack_sc": "node scripts/wrap_and_pack.js schemer $npm_package_config_schemer_version projects/schemer/src/html_wrapper/index.html", @@ -32,6 +32,7 @@ "test:schemer:coverage": "ng test schemer --watch=false --browsers=ChromeHeadless --code-coverage", "test:coverage": "npm run test:cc:coverage && npm run test:schemer:coverage", "test:scheme": "node --test scripts/validate-coding-scheme.test.js", + "test:codebook": "node --test scripts/codebook-contract.test.mjs scripts/codebook-matrix.test.mjs scripts/codebook-whitespace.test.mjs scripts/codebook-editor-matrix.test.mjs scripts/codebook-rich-layout.test.mjs scripts/codebook-rich-matrix.test.mjs scripts/codebook-docx-test-utils.test.mjs", "test:schemer:responsive": "playwright test --config playwright.schemer.config.cjs" }, "dependencies": { @@ -122,13 +123,18 @@ "@tiptap/extension-underline": "^2.27.2", "@tiptap/pm": "^2.27.2", "@types/jasmine": "~4.3.0", + "@types/katex": "^0.16.8", "@types/node": "^20.4.4", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", + "buffer": "^6.0.3", + "cheerio": "^1.1.2", + "docx": "^8.5.0", "eslint": "^8.57.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^18.0.0", "eslint-plugin-import": "^2.32.0", + "image-size": "^1.2.1", "iqb-dev-components": "^1.4.1", "jasmine-core": "~4.6.0", "karma": "~6.4.0", @@ -136,11 +142,13 @@ "karma-coverage": "~2.2.0", "karma-jasmine": "~5.1.0", "karma-jasmine-html-reporter": "~2.1.0", + "mathml2omml": "^0.5.0", "ng-packagr": "^21.2.7", "ngx-build-plus": "^20.0.0", "ngx-tiptap": "^12.0.0", "ts-node": "^10.9.1", - "typescript": "5.9.3" + "typescript": "5.9.3", + "esbuild": "0.28.1" }, "overrides": { "@babel/core": "7.29.7", diff --git a/projects/ngx-coding-components/codebook-export/codebook-export.component.html b/projects/ngx-coding-components/codebook-export/codebook-export.component.html new file mode 100644 index 0000000..3a9c1bb --- /dev/null +++ b/projects/ngx-coding-components/codebook-export/codebook-export.component.html @@ -0,0 +1,163 @@ +
{{ 'codebook.workspace.select-unit' | translate }}
} + @if (selection.length === 1) {{{ 'codebook.workspace.unit-selected' | translate }}
} + @if (selection.length > 1) {{{ selection.length }} {{ 'codebook.workspace.units-selected' | translate }}
} +<\/p>/, '');
+ }
+
+ private static prepareHtml(html: string): string {
+ // Newlines in LaTeX/HTML attributes are data, not paragraph breaks.
+ return CodebookDocxGenerator.stripFromLeadingEmptyParagraph(html);
+ }
+
+ private static decodeLatex(latex: string): string {
+ if (!latex) return '';
+ try {
+ return decodeURIComponent(latex);
+ } catch {
+ return latex;
+ }
+ }
+
+ private static latexToOmml(latex: string, style?: IRunOptions): ImportedXmlComponent | null {
+ const trimmed = latex.trim();
+ if (!trimmed) return null;
+ try {
+ if (!CodebookDocxGenerator.ommlCache[trimmed]) {
+ const mathml = katex.renderToString(trimmed, {
+ output: 'mathml',
+ throwOnError: false,
+ strict: 'ignore'
+ });
+ CodebookDocxGenerator.ommlCache[trimmed] = CodebookDocxGenerator.normalizeStretchyBars(
+ mathml, mml2omml(mathml)
+ );
+ }
+ const omml = CodebookDocxGenerator.styleMathRuns(CodebookDocxGenerator.ommlCache[trimmed], style);
+ return CodebookDocxGenerator.unwrapImportedXmlRoot(
+ ImportedXmlComponent.fromXmlString(
+ CodebookDocxGenerator.sanitizeOmmlXml(omml)
+ )
+ );
+ } catch {
+ return null;
+ }
+ }
+
+ /** The converter treats wide over/underlines as fixed-width accents and loses their position. */
+ private static normalizeStretchyBars(mathml: string, omml: string): string {
+ const math = cheerio.load(mathml, { xml: true }, false);
+ const positions: Array<'top' | 'bot' | undefined> = [];
+ math('mover,munder').each((_, node) => {
+ const operator = math(node).children().last();
+ if (operator[0]?.name === 'mo' && operator.text() === '\u203e') {
+ let position: 'top' | 'bot' | undefined;
+ if (operator.attr('stretchy') !== 'false') position = node.name === 'munder' ? 'bot' : 'top';
+ positions.push(position);
+ }
+ });
+ if (!positions.some(position => position)) return omml;
+ const $ = cheerio.load(omml, { xml: true }, false);
+ let index = 0;
+ $('m\\:acc').each((_, node) => {
+ const accent = $(node);
+ if (accent.children('m\\:accPr').children('m\\:chr').attr('m:val') !== '\u203e') return;
+ const position = positions[index];
+ index += 1;
+ if (!position) return;
+ const bar = $(' ${normalizedHtml} Kodierschema mit Schemer Version ab 1.5 erzeugen! ${rule} A B A B A A B A Vor ${tag} Nach A B C D E F A B A B Bewerten ️ < INSTRUCTION ', ' [[iqb-math:x^2]] unter vor fett nach Bewerten Zweites Kriterium Regel Absatz Prefix [[iqb-math:a%3Cb]] suffix Allgemeiner Hinweis Hinweis Text [[iqb-math:x^2]] ️ BEWERTEN vor nach ONE TWO [[iqb-math:\\${command}{S\\cap M}]] [[iqb-math:\\overline{\\underline{S\\cap M}}]] [[iqb-math:\\bar{x}]] ` +
+ ` Vor ' +
+ ' [[iqb-math:x^2]] Vor ROT Schwarz GRUEN Ende SIZE INDENT ONE TWO vor Daneben vor [[iqb-math:x^2]] ',
+ );
+ assert.equal($('m\\:oMath').length, 1);
+ assert.equal($('m\\:m').length, 1);
+ assert.ok(!$.root().text().includes('br'));
+});
diff --git a/scripts/codebook-rich-matrix.test.mjs b/scripts/codebook-rich-matrix.test.mjs
new file mode 100644
index 0000000..84f71e6
--- /dev/null
+++ b/scripts/codebook-rich-matrix.test.mjs
@@ -0,0 +1,111 @@
+import assert from 'node:assert/strict';
+import { createRequire } from 'node:module';
+import { test } from 'node:test';
+import { load } from 'cheerio';
+import { CodebookDocxGenerator } from '../dist/ngx-coding-components/fesm2022/iqb-ngx-coding-components-codebook-generator.mjs';
+import { defaults } from './fixtures/codebook-synthetic.mjs';
+import { richFormatCases, aspectHtml } from './fixtures/codebook-rich-format-cases.mjs';
+import { docxParts, partHashes } from './codebook-docx-test-utils.mjs';
+
+const require = createRequire(import.meta.url);
+const CommonJs = require('../dist/ngx-coding-components/cjs/codebook-generator.cjs').CodebookDocxGenerator;
+
+for (const source of ['aspect', 'coding-components']) {
+ for (const showScore of [false, true]) {
+ test(`complete ${source} rich format matrix, score=${showScore}, ESM/CJS`, async () => {
+ const cases = richFormatCases().filter(
+ (entry) =>
+ source === 'aspect' || !['inline-image', 'horizontal-rules', 'aspect-annotations'].includes(entry.group),
+ );
+ const units = [
+ {
+ key: 'FORMAT',
+ name: 'Synthetic acceptance matrix',
+ items: [],
+ missings: [],
+ variables: [
+ {
+ id: 'V',
+ label: 'Formatting',
+ sourceType: 'BASE',
+ generalInstruction: '',
+ codes: cases.map((entry, index) => ({
+ id: String(index + 1),
+ label: entry.group,
+ score: '1',
+ description: source === 'aspect' ? aspectHtml(entry.html) : entry.html,
+ })),
+ },
+ ],
+ },
+ ];
+ const options = { ...defaults, showScore };
+ const parts = await docxParts(await CodebookDocxGenerator.generateDocx(units, options));
+ const commonParts = await docxParts(await CommonJs.generateDocx(units, options));
+ assert.deepEqual(partHashes(parts), partHashes(commonParts));
+ const $ = load(parts['word/document.xml'], { xml: true });
+ const paragraphs = new Map();
+ $('w\\:p').each((_, paragraph) => {
+ const id = $(paragraph)
+ .find('w\\:t')
+ .text()
+ .match(/FMT\d{4}/)?.[0];
+ if (id) paragraphs.set(id, paragraph);
+ });
+ assert.equal(paragraphs.size, cases.length);
+ let markCases = 0;
+ for (const entry of cases) {
+ const p = $(paragraphs.get(entry.id));
+ const expected = entry.expected;
+ if (expected.align) {
+ assert.equal(
+ p.find('w\\:jc').attr('w:val'),
+ expected.align === 'justify' ? 'both' : expected.align,
+ entry.id,
+ );
+ }
+ if (entry.group === 'marks-font-alignment') {
+ const run = p.find('w\\:r').filter((_, node) => $(node).find('w\\:t').text().includes(entry.id));
+ assert.equal(run.find('w\\:sz').attr('w:val'), String(Math.round(expected.size * 1.5)), entry.id);
+ for (const [bit, tag] of ['b', 'i', 'u', 'strike'].entries()) {
+ assert.equal(!!run.find(`w\\:${tag}`).length, !!(expected.mask & (1 << bit)), `${entry.id} ${tag}`);
+ }
+ const vertical = expected.vertical ? (expected.vertical === 'sup' ? 'superscript' : 'subscript') : undefined;
+ assert.equal(run.find('w\\:vertAlign').attr('w:val'), vertical, entry.id);
+ assert.ok(run.text().includes('10\u00a0kg; 20\u202fcm; Abstand bleibt'), entry.id);
+ markCases += 1;
+ } else if (entry.group === 'format-boundaries') {
+ const run = (text) => p.find('w\\:r').filter((_, node) => $(node).children('w\\:t').text() === text);
+ assert.equal(run('FARBE').find('w\\:color').attr('w:val'), expected.hex, entry.id);
+ assert.equal(run('FARBE').find('w\\:sz').attr('w:val'), '36', entry.id);
+ assert.equal(run(' NORMAL ').find('w\\:color').attr('w:val'), '000000', entry.id);
+ assert.equal(run(' ENDE').find('w\\:shd').attr('w:fill'), 'FFFFFF', entry.id);
+ } else if (entry.group === 'paragraph-layout') {
+ assert.equal(p.find('w\\:ind').attr('w:start'), String(expected.indent * 300), entry.id);
+ assert.equal(p.find('w\\:ind').attr('w:hanging'), expected.hanging ? '300' : undefined, entry.id);
+ assert.equal(p.find('w\\:spacing').attr('w:after'), String(expected.margin * 15), entry.id);
+ } else if (entry.group === 'list-styles-depth') {
+ const marker = {
+ disc: '•',
+ circle: '○',
+ square: '▪',
+ decimal: '1.',
+ 'lower-latin': 'a.',
+ 'upper-latin': 'A.',
+ 'lower-roman': 'i.',
+ 'upper-roman': 'I.',
+ 'lower-greek': 'α.',
+ };
+ assert.ok(p.find('w\\:t').text().startsWith(marker[expected.style]), entry.id);
+ assert.equal(p.find('w\\:r > w\\:tab').length, 1, entry.id);
+ assert.equal(p.find('w\\:ind').attr('w:start'), String(expected.depth * 600 + 100), entry.id);
+ }
+ }
+ assert.equal(markCases, 2496);
+ assert.equal($('m\\:oMath').length, 40);
+ assert.equal($('w\\:drawing').length, source === 'aspect' ? 4 : 3);
+ assert.equal($('wp\\:anchor').length, 2);
+ assert.doesNotMatch(parts['word/document.xml'], /HTML konnte nicht verarbeitet werden| Alle 48 gültigen Kombinationen aus vier Textmarkierungen und Grundlinie/Hoch-/Tiefstellung. Formel: [[iqb-math:x^2]] und Liste 10 kg Unterpunkt vor Bild nach Bild vor ${marked} nach ${marked} CASE VOR FARBE NORMAL MARK ENDE CASE LISTE CASE ABSATZ CASE VOR BILD NACH BILD CASE VOR
');
+ editor.commands.selectAll();
+ editor.commands.hangIndent(20);
+ const paragraphs: boolean[] = [];
+ editor.state.doc.descendants(node => {
+ if (node.type.name === 'paragraph') paragraphs.push(node.attrs['hangingIndent']);
+ if (node.type.name === 'bulletList') expect(node.attrs['hangingIndent']).toBeUndefined();
+ });
+ expect(paragraphs).toEqual([true, true]);
+ editor.commands.unhangIndent(20);
+ expect(editor.getHTML()).not.toContain('text-indent: -');
+ });
+
+ it('keeps the default indent size and clamps repeated commands for a text selection', () => {
+ editor.commands.setContent('
');
+ editor.commands.selectAll();
+ editor.commands.setMargin(10);
+ const margins: number[] = [];
+ editor.state.doc.descendants(node => {
+ if (node.type.name === 'paragraph') margins.push(node.attrs['margin']);
+ else expect(node.attrs['margin']).toBeUndefined();
+ });
+ expect(margins).toEqual([10, 10]);
+ });
+});
diff --git a/projects/ngx-coding-components/src/lib/rich-text-editor/extensions/indent.ts b/projects/ngx-coding-components/src/lib/rich-text-editor/extensions/indent.ts
index 6faf3fd..150b380 100644
--- a/projects/ngx-coding-components/src/lib/rich-text-editor/extensions/indent.ts
+++ b/projects/ngx-coding-components/src/lib/rich-text-editor/extensions/indent.ts
@@ -1,5 +1,5 @@
import { Command, Extension } from '@tiptap/core';
-import { TextSelection, Transaction } from 'prosemirror-state';
+import { AllSelection, TextSelection, Transaction } from 'prosemirror-state';
export interface IndentOptions {
types: string[];
@@ -44,7 +44,7 @@ export const Indent = Extension.create', '[[iqb-math:x^2]]']) assert.equal(hasCodebookManualInstruction(nonempty), true, nonempty);
+});
+
+test('IDs, code zero, derived filtering, BASE_NO_VALUE and stable sorting', () => {
+ const vars = [variable('Z', [code(0)], { alias: 'A' }), variable('B', [code(-1)]), variable('NO', [code(1)], { sourceType: 'BASE_NO_VALUE' }), variable('D', [code(1)], { sourceType: 'COPY_VALUE' })];
+ const actual = data(vars, { hasDerivedVars: false });
+ assert.deepEqual(actual.map(v => v.id), ['A', 'B']);
+ assert.equal(actual[0].codes[0].id, '0');
+});
+
+test('invalid schemas fail with the unit key and absent schemes are allowed', () => {
+ assert.throws(() => CodebookGenerator.getCodebookData([{ id: 1, key: 'BAD', name: '', scheme: '{' }], options, []), /BAD/);
+ assert.deepEqual(CodebookGenerator.getCodebookData([{ id: 1, key: 'EMPTY', name: '' }], options, [])[0].variables, []);
+});
+
+test('JSON contract omits items and score when disabled; units sorted by key', async () => {
+ const blob = await CodebookGenerator.generateCodebook([unit([variable('V', [code(0)])], 'Z'), unit([], 'A')], { ...options, showScore: false }, [{ code: 0, label: 'Missing', description: 'Leer' }]);
+ const parsed = JSON.parse(await blob.text());
+ assert.deepEqual(parsed.map(u => u.key), ['A', 'Z']);
+ assert.equal('items' in parsed[1], false);
+ assert.equal('score' in parsed[1].variables[0].codes[0], false);
+ assert.equal(parsed[1].missings[0].code, 0);
+});
+
+async function document(description, extra = {}) {
+ const units = [{ key: 'U', name: 'Aufgabe', variables: [{ id: 'V', label: 'Variable', sourceType: 'BASE', generalInstruction: '', codes: [{ id: '0', label: 'CODE ZERO', score: '7', description }] }],
+ items: [{ id: 'ITEM', variableId: 'V' }], missings: [{ code: 0, label: 'MISSING ZERO', description: 'Leer' }] }];
+ const blob = await CodebookDocxGenerator.generateDocx(units, { ...options, ...extra });
+ const zip = await JSZip.loadAsync(await blob.arrayBuffer());
+ return { zip, xml: await zip.file('word/document.xml').async('string') };
+}
+
+test('DOCX keeps Studio headings, item relations, score column order and neutral footer', async () => {
+ const { zip, xml } = await document('
durch
neu`);
+ assert.match(xml, /
Hinweis
Danach');
+ assert.deepEqual(descriptionParagraphs(xml), ['Vor fett', 'Regel', 'Zwischen kursiv', 'Hinweis', 'Danach']);
+ const $ = load(xml, { xml: true });
+ assert.equal($('w\\:r').filter((_, run) => $(run).find('w\\:t').text() === 'fett').find('w\\:b').length, 1);
+ assert.equal($('w\\:r').filter((_, run) => $(run).find('w\\:t').text() === 'kursiv').find('w\\:i').length, 1);
+});
+
+test('DOCX keeps mixed and nested list contents without repeating paragraphs or images', async () => {
+ const image = 'iVBORw0KGgoAAAANSUhEUgAAACgAAAAUCAIAAABwJOjsAAAAJElEQVR4nGOQSDgwIIhh1OJRi0ctHrV41OJRi0ctHrV45FgMAHBlzy43YLJ+AAAAAElFTkSuQmCC';
+ const { xml, zip } = await document(`
`);
+ assert.deepEqual(descriptionParagraphs(xml), ['Vor', 'Absatz', 'Danach', '•Unterpunkt ', '']);
+ const $ = load(xml, { xml: true });
+ assert.equal($('w\\:drawing').length, 1);
+ assert.equal($('m\\:oMath').length, 1);
+ assert.equal(Object.keys(zip.files).filter(name => name.startsWith('word/media/') && !zip.files[name].dir).length, 1);
+});
+
+test('complete DOCX exports keep list instructions and plain instructions after generated rules in ESM and CJS', async () => {
+ const require = createRequire(import.meta.url);
+ const commonjs = require('../dist/ngx-coding-components/cjs/codebook-generator.cjs');
+ for (const [instruction, ruleSets, expected] of [
+ ['
', [], ['Erstes Kriterium', 'Zweites Kriterium']],
+ ['Manuelle Instruktion', [{ rules: [{ method: 'MATCH', parameters: ['ABC'] }], ruleOperatorAnd: true }], ['ABC', 'Manuelle Instruktion']]
+ ]) {
+ const units = [unit([variable('V', [{ ...code(1, instruction), ruleSets }])])];
+ let reference;
+ for (const generator of [CodebookGenerator, commonjs.CodebookGenerator]) {
+ const blob = await generator.generateCodebook(units, { ...options, exportFormat: 'docx', hasOnlyManualCoding: true, hasClosedVars: true }, []);
+ const zip = await JSZip.loadAsync(await blob.arrayBuffer());
+ const xml = await zip.file('word/document.xml').async('string');
+ assert.deepEqual(descriptionParagraphs(xml), expected);
+ if (reference) assert.equal(xml, reference);
+ reference = xml;
+ }
+ }
+});
+
+test('escaped inequality formulas produce valid XML text in inline and block form', async () => {
+ const { xml } = await document('Text unten oben
`);
+ assert.ok($(runs($, 'ONE')[0]).closest('w\\:p').find('w\\:t').text().startsWith(`${start}.`));
+ assert.ok($(runs($, 'TWO')[0]).closest('w\\:p').find('w\\:t').text().startsWith(`${start + 1}.`));
+ });
+}
+for (const [command, position] of [['overline', 'top'], ['underline', 'bot']]) {
+ test(`wide ${command} covers the full expression at the correct position`, async () => {
+ const $ = await render(`nach
' },
+ { id: '51', label: 'Bild', score: '1', description: `NACH
CASE 10 kg;20 cm;FETT KURSIV
ZEILE – ‑ ‘ ’ ‚ „ “ ” ‹ › « » µ ç Ç
ABSATZ
', + ); + add( + 'blockquote', + '', + ); + add( + 'horizontal-rules', + 'CASE ZITAT FETT
VERSCHACHTELT
CASE VOR
MITTE
NACH
', + ); + return cases; +} +export function aspectHtml(html) { + return html.replace( + /<\/span>/g, + (_, latex) => `Bewerten
'), code(0)], selected: [[2, 0], [2], null, [2, 0]] }, + { name: 'MIXED', codes: [code(2, 'Gemischt
'), code(0, '', 'RESIDUAL_AUTO')], selected: [[2, 0], [2], [2, 0], [2, 0]] }, + { name: 'CLOSED', codes: [code(0, '', 'RESIDUAL_AUTO')], selected: [[0], null, [0], [0]] }, + { name: 'INCOMPLETE', codes: [code(0, '', 'INTENDED_INCOMPLETE')], selected: [[0], null, [0], [0]] }, + { name: 'AUTO', codes: [code(0)], selected: [[0], null, null, null] }, + { name: 'EMPTY', codes: [], selected: [[], null, null, null] }, + { name: 'GENERAL_ONLY', codes: [code(0)], general: 'Allgemeiner Hinweis
', selected: [[0], null, null, null] }, + { name: 'INVISIBLE', codes: [code(0, '
')], selected: [[0], null, null, null] }, + { name: 'IMAGE', codes: [code(0, `[[iqb-math:x^2]]
')], selected: [[0], [0], null, [0]] }, + { name: 'RESIDUAL', codes: [code(0, 'Rest bewerten
', 'RESIDUAL')], selected: [[0], [0], null, [0]] }, + { name: 'TO_CHECK', codes: [code(0, 'Prüfen
Teilweise
', 'PARTIAL_CREDIT')], selected: [[0], [0], null, [0]] }, + { name: 'CLOSED_TEXT', codes: [code(0, 'Geschlossener Hinweis
', 'RESIDUAL_AUTO')], selected: [[0], null, [0], [0]] } +]; +export function selectionCorpus() { + const rows = []; + for (const sourceType of ['BASE', 'MANUAL', 'COPY_VALUE', 'SUM_SCORE', 'SOLVER', 'UNIQUE_VALUES', 'CONCAT_CODE', 'SUM_CODE', 'BASE_NO_VALUE']) { + for (const training of [false, true]) { + for (const group of groups) { + const id = `${sourceType}_${training ? 'TRAIN' : 'REGULAR'}_${group.name}`; + const variable = { id, alias: `PUBLIC.${id}`, label: id, sourceType, deriveSources: ['SOURCE'], + sourceParameters: sourceType === 'SOLVER' ? { solverExpression: 'SOURCE + 1' } : {}, + processing: training ? ['CODER_TRAINING_REQUIRED'] : [], manualInstruction: group.general || ' ', codes: group.codes }; + rows.push({ variable, selected: group.selected, training }); + } + } + } + return { rows, units: [{ id: 2, key: 'Z', name: 'Leer', scheme: JSON.stringify({ version: '3.4', variableCodings: [] }), metadata: { items: [] } }, + { id: 1, key: 'A', name: 'Künstliche Kategorien', scheme: JSON.stringify({ version: '3.4', variableCodings: rows.map(r => r.variable).reverse() }), + metadata: { items: rows.map(({ variable }) => ({ id: `ITEM_${variable.id}`, variableId: variable.alias })) } }] }; +} +export function expectedSelection(rows, options) { + const column = Number(options.hasOnlyManualCoding) + 2 * Number(options.hasClosedVars); + return rows.filter(({ variable, training, selected }) => selected[column] !== null && + variable.sourceType !== 'BASE_NO_VALUE' && (options.hasDerivedVars || variable.sourceType === 'BASE') && + (options.trainingRequirement === 'all' || training === (options.trainingRequirement === 'required')) && + (!options.hasOnlyVarsWithCodes || selected[column].length)) + .map(({ variable, selected }) => ({ id: variable.alias, codes: selected[column].map(String) })) + .sort((a, b) => a.id < b.id ? -1 : Number(a.id > b.id)); +} + +// Stable original-Studio behaviour. Approved corrections have separate tests. +// In particular no nested marks, loose text, whitespace at mark boundaries, +// corrected item relations, or changed manual-only filtering is hidden here. +export function referenceCorpus() { + const variables = ruleCases.map(([method, parameters], i) => ({ id: `RULE_${String(i).padStart(2, '0')}`, + alias: `ALIAS_${String(i).padStart(2, '0')}`, label: `Regel ${i}`, sourceType: 'BASE', manualInstruction: i ? '' : ' ', + codes: [code(1, 'Bewerten
', 'FULL_CREDIT', { ruleSets: [{ rules: [{ method, parameters }], ruleOperatorAnd: true }] })] })); + variables.push({ id: 'RICH', alias: 'Z_RICH', label: 'Formatierung', sourceType: 'BASE', + manualInstruction: 'Allgemeiner Hinweis
', codes: [code(2, + `Farbe
` + + 'Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
' + + `Summe bewerten
')] }); + variables.push({ id: 'CONNECT', alias: 'Z_CONNECT', label: 'Verknüpfungen', sourceType: 'BASE', manualInstruction: '', + codes: [true, false].map((and, i) => code(i + 4, 'Verknüpft
', 'FULL_CREDIT', { ruleSetOperatorAnd: and, + ruleSets: [{ ruleOperatorAnd: and, valueArrayPos: 'ANY', rules: [{ method: 'MATCH', parameters: ['gamma'] }, { method: 'IS_TRUE', fragment: 0 }] }, + { ruleOperatorAnd: and, valueArrayPos: 0, rules: [{ method: 'NUMERIC_MATCH', parameters: ['11'] }] }] })) }); + return [{ id: 1, key: 'A', name: 'Synthetische Studio Referenz', scheme: JSON.stringify({ version: '3.4', variableCodings: variables }), metadata: { items: [] } }, + { id: 2, key: 'B', name: 'Zweite Aufgabe', scheme: JSON.stringify({ version: '3.0', variableCodings: [variables[0]] }), metadata: { items: [] } }]; +} +export function* referenceOptions() { + for (let bits = 0; bits < 32; bits += 1) { + const keys = ['hasGeneralInstructions', 'codeLabelToUpper', 'showScore', 'hideItemVarRelation', 'hasDerivedVars']; + yield { ...defaults, hasOnlyManualCoding: false, hasClosedVars: false, hasOnlyVarsWithCodes: false, + ...Object.fromEntries(keys.map((key, i) => [key, !!(bits & (1 << i))])) }; + } +} diff --git a/scripts/fixtures/codebook-whitespace.mjs b/scripts/fixtures/codebook-whitespace.mjs new file mode 100644 index 0000000..99d5ac5 --- /dev/null +++ b/scripts/fixtures/codebook-whitespace.mjs @@ -0,0 +1,33 @@ +import { defaults } from './codebook-synthetic.mjs'; + +// Invented typography examples. Internal spacing is unchanged by old Studio; +// the separately tested corrections at formatting boundaries still apply. +const variants = [ + ['nbsp-named', '10 kg
', '10\u00a0kg'], + ['nbsp-decimal', '10 kg
', '10\u00a0kg'], + ['nbsp-hex', '10 kg
', '10\u00a0kg'], + ['nbsp-literal', '10\u00a0kg
', '10\u00a0kg'], + ['narrow-nbsp-decimal', '20 cm
', '20\u202fcm'], + ['narrow-nbsp-hex', '20 cm
', '20\u202fcm'], + ['narrow-nbsp-literal', '20\u202fcm
', '20\u202fcm'], + ['repeated-nbsp', '10 kg
', '10\u00a0\u00a0kg'], + ['formatted-nbsp', '10 kg
', '10\u00a0kg'], + ['repeated-spaces', 'Abstand bleibt
', 'Abstand bleibt'] +]; + +export function whitespaceReferenceUnits(html) { + return [{ id: 1, key: 'SPACE', name: 'Synthetische Abstände', metadata: { items: [] }, + scheme: JSON.stringify({ version: '3.4', variableCodings: [{ id: 'V', label: 'Abstände', + sourceType: 'BASE', manualInstruction: html, + codes: [{ id: 1, type: 'FULL_CREDIT', label: 'Code', score: 1, + ruleSets: [], ruleSetOperatorAnd: true, manualInstruction: html }] }] }) }]; +} + +export function* whitespaceReferenceCases() { + for (const [id, html, text] of variants) { + for (const showScore of [false, true]) { + yield { id, html, text, options: { ...defaults, hasOnlyManualCoding: false, + hasClosedVars: false, hasOnlyVarsWithCodes: false, codeLabelToUpper: false, showScore } }; + } + } +} diff --git a/scripts/fixtures/studio-codebook/README.md b/scripts/fixtures/studio-codebook/README.md new file mode 100644 index 0000000..ce22e4c --- /dev/null +++ b/scripts/fixtures/studio-codebook/README.md @@ -0,0 +1,56 @@ +# Studio DOCX reference + +Generated from iqb-berlin/studio-lite develop commit +`2504265721a59c7c65425072951ce82ab16f0fb8`, class `DownloadDocx`, using docx 8.5.0. +The input is in the `Studio reference preserves ...` contract test. + +Only two baseline normalizations: +- `IQB-Studio Codebook` becomes the approved neutral `IQB Codebook`. +- The generation date becomes `{{DATE}}`. + +Document XML, styles, numbering, settings and footer must otherwise match exactly. +The fixture deliberately excludes the separately tested approved corrections +(code/missing 0, item relationships, plain instructions and whitespace boundaries). + +## Synthetic raw-schema reference + +`synthetic-reference.json` contains original Studio JSON and SHA-256 digests of +every DOCX part for 32 formatting combinations, starting from raw invented +schemes in `../codebook-synthetic.mjs`. It covers all 13 supported rule methods, +AND/OR rules and rule sets, array positions, multiple tasks, derived variables, +aliases, formatted text, list paragraphs, images and inline/block formulas. +Whitespace-only general instructions must retain the original Studio layout. + +The synthetic categories were informed by five example ZIPs, but none of their +identifiers, task content, instructions, rules or images are included. The example +ZIPs are neither required by tests nor committed as reference fixtures. + +Besides the two normalizations above, ZIP container timestamps are irrelevant, +`docProps/core.xml` (creation/modification metadata) is excluded, and random image +filenames are replaced in first-reference order. Image bytes, relationship +targets, document XML, styles, widths, margins, numbering and page fields remain +part of the exact comparison. `codebook-docx-test-utils.mjs` implements this. + +The baseline is captured explicitly from the immutable Studio commit above: + +```sh +node scripts/capture-studio-codebook-reference.mjs /path/to/studio-checkout +``` + +CI only reads this fixture. Never regenerate it from the shared generator to make +a failing test pass. Approved semantic corrections are checked independently by +the option matrix rather than being disguised as original Studio behaviour. + +## Protected spacing reference + +`whitespace-reference.json` is captured by the same command from the same old +Studio commit. Its 20 cases cover NBSP and narrow NBSP as HTML entities, numeric +character references and literal Unicode, repeated NBSP, bold text and repeated +ordinary spaces, each with and without a score column. Every input places the +same text in both a general instruction and a code instruction. + +The tests compare original Studio JSON and every normalized DOCX part against +both ESM and CommonJS exports and additionally assert the exact instruction text. +The host installation comparison also runs all 20 cases in JSON and DOCX through +both installed adapters against this independent reference. These cases extend +the references without changing the original 32-case fixture. diff --git a/scripts/fixtures/studio-codebook/document.xml b/scripts/fixtures/studio-codebook/document.xml new file mode 100644 index 0000000..bfa3d3e --- /dev/null +++ b/scripts/fixtures/studio-codebook/document.xml @@ -0,0 +1 @@ +alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "5bb32bfe61cd729e3f4209fb2229dc59d411975f31f3e505f0375010865301bd", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "99d5f96d9ff75cef3deb0dc265411526598bd0ea7a3f755372ae7761f3b36cc1", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "5bb32bfe61cd729e3f4209fb2229dc59d411975f31f3e505f0375010865301bd", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "99d5f96d9ff75cef3deb0dc265411526598bd0ea7a3f755372ae7761f3b36cc1", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "26bb549d5e562916822058d9a3de6914df179b4bc47428988064589310dbf659", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c50511de7b40e5f30b30b3181abc78a0c6f89ef4d156eb9d63162a84c08a8744", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "26bb549d5e562916822058d9a3de6914df179b4bc47428988064589310dbf659", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c50511de7b40e5f30b30b3181abc78a0c6f89ef4d156eb9d63162a84c08a8744", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "5bb32bfe61cd729e3f4209fb2229dc59d411975f31f3e505f0375010865301bd", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "99d5f96d9ff75cef3deb0dc265411526598bd0ea7a3f755372ae7761f3b36cc1", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "5bb32bfe61cd729e3f4209fb2229dc59d411975f31f3e505f0375010865301bd", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "99d5f96d9ff75cef3deb0dc265411526598bd0ea7a3f755372ae7761f3b36cc1", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "26bb549d5e562916822058d9a3de6914df179b4bc47428988064589310dbf659", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c50511de7b40e5f30b30b3181abc78a0c6f89ef4d156eb9d63162a84c08a8744", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "26bb549d5e562916822058d9a3de6914df179b4bc47428988064589310dbf659", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": false, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c50511de7b40e5f30b30b3181abc78a0c6f89ef4d156eb9d63162a84c08a8744", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "87cfe0ff9c38fcd2c157e548791bae4d76124e957de2d9bdd589f62b16f84c80", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "633c95ee191bf907f7325608a737de635c7d8ee47559bf086a65dd2d951738c7", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "87cfe0ff9c38fcd2c157e548791bae4d76124e957de2d9bdd589f62b16f84c80", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "633c95ee191bf907f7325608a737de635c7d8ee47559bf086a65dd2d951738c7", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "57723ed4c2252405e198c6900dfa4ff453a91b4a3032f2f66b0c7a0d59e0137f", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "70b7903b93334e1302849b9c06cdf99ad810622db701df938e419648acc06f21", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "57723ed4c2252405e198c6900dfa4ff453a91b4a3032f2f66b0c7a0d59e0137f", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": false, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "70b7903b93334e1302849b9c06cdf99ad810622db701df938e419648acc06f21", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "87cfe0ff9c38fcd2c157e548791bae4d76124e957de2d9bdd589f62b16f84c80", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "633c95ee191bf907f7325608a737de635c7d8ee47559bf086a65dd2d951738c7", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "87cfe0ff9c38fcd2c157e548791bae4d76124e957de2d9bdd589f62b16f84c80", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "633c95ee191bf907f7325608a737de635c7d8ee47559bf086a65dd2d951738c7", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "57723ed4c2252405e198c6900dfa4ff453a91b4a3032f2f66b0c7a0d59e0137f", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "70b7903b93334e1302849b9c06cdf99ad810622db701df938e419648acc06f21", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": false, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "57723ed4c2252405e198c6900dfa4ff453a91b4a3032f2f66b0c7a0d59e0137f", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": true, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "A", + "name": "Synthetische Studio Referenz", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_01", + "label": "Regel 1", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_02", + "label": "Regel 2", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Übereinstimmung (numerisch) mit '7'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_03", + "label": "Regel 3", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '2' und Wert ist maximal '9'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_04", + "label": "Regel 4", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '3' und Wert ist maximal '8'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_05", + "label": "Regel 5", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert geringer als '5'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_06", + "label": "Regel 6", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert größer als '6'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_07", + "label": "Regel 7", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist maximal '10'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_08", + "label": "Regel 8", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist mindestens '4'
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_09", + "label": "Regel 9", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Leerer Wert
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_10", + "label": "Regel 10", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist NULL
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_11", + "label": "Regel 11", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist WAHR
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "ALIAS_12", + "label": "Regel 12", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Wert ist FALSCH
Bewerten
", + "score": "2" + } + ] + }, + { + "id": "Z_CONNECT", + "label": "Verknüpfungen", + "sourceType": "BASE", + "generalInstruction": "", + "codes": [ + { + "id": "4", + "label": "RICHTIG", + "description": "gamma\n\nUND\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + }, + { + "id": "5", + "label": "RICHTIG", + "description": "gamma\n\nODER\n\nWert ist WAHR - F1
Übereinstimmung (numerisch) mit '11' (A1)
Verknüpft
", + "score": "2" + } + ] + }, + { + "id": "Z_RICH", + "label": "Formatierung", + "sourceType": "BASE", + "generalInstruction": "Allgemeiner Hinweis
", + "codes": [ + { + "id": "2", + "label": "RICHTIG", + "description": "Farbe
Unterstrichen
Kursiv
Durchgestrichen
Kriterium eins
Kriterium zwei
[[iqb-math:x^2]]
Formel:[[iqb-math:a%3Cb]]
Summe bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + }, + { + "key": "B", + "name": "Zweite Aufgabe", + "variables": [ + { + "id": "ALIAS_00", + "label": "Regel 0", + "sourceType": "BASE", + "generalInstruction": " ", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "alpha
Bewerten
", + "score": "2" + } + ] + } + ], + "missings": [ + { + "code": 99, + "label": "Missing", + "description": "Keine Antwort" + } + ] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "4f37a9ec8bc6e77ac1635576141af357bad88366fb22e54344e54d7053be66e2", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "70b7903b93334e1302849b9c06cdf99ad810622db701df938e419648acc06f21", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/media/image-0-78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684.png": "78d10360f88bf6fea9f54941ae25397f917c4f081d3b14f7a86d2685f6f5e684", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + } + ] +} diff --git a/scripts/fixtures/studio-codebook/whitespace-reference.json b/scripts/fixtures/studio-codebook/whitespace-reference.json new file mode 100644 index 0000000..b612398 --- /dev/null +++ b/scripts/fixtures/studio-codebook/whitespace-reference.json @@ -0,0 +1,1183 @@ +{ + "source": "iqb-berlin/studio-lite@2504265721a59c7c65425072951ce82ab16f0fb8", + "docx": "8.5.0", + "responses": "5.2.2", + "normalization": [ + "footer date", + "IQB-Studio Codebook -> IQB Codebook", + "exclude docProps/core.xml timestamps", + "random media filenames in first-reference order; image bytes and relationships preserved" + ], + "cases": [ + { + "id": "nbsp-named", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d5f9f53a5031c8a9ddd1e3a34b7ee7736fc65b91bc282eddaf594b77cbfe1a0c", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-named", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c84f505c7595bf22b934aae1101ee06805d326f0f5c4796d3cf2132c93391312", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-decimal", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d5f9f53a5031c8a9ddd1e3a34b7ee7736fc65b91bc282eddaf594b77cbfe1a0c", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-decimal", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c84f505c7595bf22b934aae1101ee06805d326f0f5c4796d3cf2132c93391312", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-hex", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d5f9f53a5031c8a9ddd1e3a34b7ee7736fc65b91bc282eddaf594b77cbfe1a0c", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-hex", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c84f505c7595bf22b934aae1101ee06805d326f0f5c4796d3cf2132c93391312", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-literal", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d5f9f53a5031c8a9ddd1e3a34b7ee7736fc65b91bc282eddaf594b77cbfe1a0c", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "nbsp-literal", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "c84f505c7595bf22b934aae1101ee06805d326f0f5c4796d3cf2132c93391312", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-decimal", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "2fbb32bd9464923bcb49d0204245fa54a7f3bab9bf6091260c2ed413b48fa745", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-decimal", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d22b462f11aa99bb4342156f65b68b5e73092a2abd7fbc728e840519384a9e76", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-hex", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "2fbb32bd9464923bcb49d0204245fa54a7f3bab9bf6091260c2ed413b48fa745", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-hex", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d22b462f11aa99bb4342156f65b68b5e73092a2abd7fbc728e840519384a9e76", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-literal", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "2fbb32bd9464923bcb49d0204245fa54a7f3bab9bf6091260c2ed413b48fa745", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "narrow-nbsp-literal", + "html": "20 cm
", + "text": "20 cm", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "20 cm
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "20 cm
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "d22b462f11aa99bb4342156f65b68b5e73092a2abd7fbc728e840519384a9e76", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "repeated-nbsp", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "98e0a6b2f6a6517823bde18586896aa2d7f7e726ca30c3ce400b22de7a34d00d", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "repeated-nbsp", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "3895359b0adbabd51aaa6e49e1b5ed55c532cca9184318cfc32fd9f31e0bc4bd", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "formatted-nbsp", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "38224679ebf17932f60df3476af6d166cb9ead25bed982aef11d90bca1c1250c", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "formatted-nbsp", + "html": "10 kg
", + "text": "10 kg", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "10 kg
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "10 kg
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "809580cfa42b32d2b96e75f046ecc9753c28a560e7090f8992754f346f1d61e8", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "repeated-spaces", + "html": "Abstand bleibt
", + "text": "Abstand bleibt", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": false, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "Abstand bleibt
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Abstand bleibt
" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "6648dae92f513a0a1a1e2f6e76cdcdb1bd5265853c9ae43b14f10e5f8ffa4040", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + }, + { + "id": "repeated-spaces", + "html": "Abstand bleibt
", + "text": "Abstand bleibt", + "options": { + "exportFormat": "docx", + "missingsProfile": "", + "hasOnlyManualCoding": false, + "hasClosedVars": false, + "hasOnlyVarsWithCodes": false, + "hasDerivedVars": true, + "hasGeneralInstructions": true, + "codeLabelToUpper": false, + "showScore": true, + "hideItemVarRelation": true, + "trainingRequirement": "all" + }, + "json": [ + { + "key": "SPACE", + "name": "Synthetische Abstände", + "variables": [ + { + "id": "V", + "label": "Abstände", + "sourceType": "BASE", + "generalInstruction": "Abstand bleibt
", + "codes": [ + { + "id": "1", + "label": "RICHTIG", + "description": "Abstand bleibt
", + "score": "1" + } + ] + } + ], + "missings": [] + } + ], + "docxParts": { + "_rels/.rels": "641d22a23aa9eb550103a7a01471eaeda5e84c69413e6e03e7fd290b4811a756", + "[Content_Types].xml": "df5eb4247e8594a57c753483112f94648c5b3c162ca0219282d2fff19332bc95", + "docProps/app.xml": "579eba9a8d602575736c3880cf5b529aabbadee0e8cc0e4df8573db0ceadbd4b", + "docProps/custom.xml": "8ec73cc7ce297e42cc652a1d1884d4ffb18ffa0ba7a6502a36f8da90d1be61a1", + "word/_rels/document.xml.rels": "aa8797f9c50610a37b43a791788cb6fe01a8527573c99c09bc946fff7bc31db3", + "word/_rels/fontTable.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footer1.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/_rels/footnotes.xml.rels": "bf64631f0bc7bd46712fef822bcfb22e069fa5779e133980ca0c9d81f00efc09", + "word/comments.xml": "dd2d62f68c6fd01fc4d7d44081587af54ea3e135b9486cc44fa3c62d087adfec", + "word/document.xml": "dfecbaf8f9be0b973a6651243b6b4f543017cff17adc3655762cc6ed9fef0c51", + "word/fontTable.xml": "a746dbb577ec5d68983d659707c0750ca89d40b9d3316e31af331d5e1c736bad", + "word/footer1.xml": "30efed85f494baa349a2bb3df6b05b5dc032d5e912fc5e3aa5d8b293ceea2127", + "word/footnotes.xml": "5a340540bed5ec7a6a1087be13fb0a226151e22e28c43a57d6e5f02acd53ba02", + "word/numbering.xml": "d7283fe87395f6e1c8f2d7f9ece168d2fb35865df19c2ad0660b1390805433fe", + "word/settings.xml": "9f0ff5915faa60180bf7eb19e0db13633fb19c5cffce8d36c7b9a8387f067ad8", + "word/styles.xml": "c51ec0d97223a6b40d98f915b1886d85a909998d4fecdb66ce8bd9be8ef68582" + } + } + ] +} diff --git a/scripts/fixtures/word-acceptance/README.md b/scripts/fixtures/word-acceptance/README.md new file mode 100644 index 0000000..d2ac2b0 --- /dev/null +++ b/scripts/fixtures/word-acceptance/README.md @@ -0,0 +1,44 @@ +# Synthetic Office acceptance documents + +These documents contain invented test data only. They are retained at a public, +versioned URL so Microsoft Office Web Viewer can render the actual DOCX files +without uploading user data to an Office account. + +- `rich-scores.docx` and `rich-no-scores.docx` are outputs of + `scripts/compare-codebook-installations.mjs` using the installed shared package + at commit `aa404bc2`. Every relevant DOCX part was compared with the immutable + original Studio reference. The corresponding Kodierbox outputs have identical + normalized document parts. +- `studio-browser.docx` is an actual browser download from Studio with its real + production backend and a fresh migrated test database. It includes the rich + corpus plus NBSP, narrow NBSP and repeated spaces in general/code instructions. + +Source fixtures: `../codebook-synthetic.mjs`, `../codebook-whitespace.mjs`. +Package SHA256: `dcee6cc39436baf91cf2558afedfbc202e044ca14dbf72c7bfdf4b381e5c0ccd`. + +These files are inputs to visual acceptance, not proof that Office has rendered +or passed them. Execution results are documented separately. + +`original-studio-scores.docx` and `original-studio-no-scores.docx` are generated +from the immutable pre-harmonisation Studio renderer and adapter at +`2504265721a59c7c65425072951ce82ab16f0fb8`, using the same synthetic rich corpus +and dependency versions. They support direct same-engine visual comparison. + +`editor-combinations.docx` contains all 48 valid shared inline-mark combinations +and mixed formula/list/image cases. Regenerate after `npm run build_cc` with +`node scripts/create-codebook-editor-office-fixture.mjs`. Its executable contract +is `scripts/codebook-editor-matrix.test.mjs` (384 cases, each ESM and CommonJS). + +`kodierbox-browser.docx` is the corresponding actual browser download produced +by a real Redis generation job in Kodierbox. Its JSON companion and every +normalized DOCX part match the Studio browser download exactly. + +## Extended Aspect and rich-text acceptance + +`aspect-full-matrix.docx` and `cc-full-matrix.docx` contain 2,740 / 2,738 browser-authored cases. `aspect-feature-specimen.docx` and `cc-feature-specimen.docx` provide readable subsets covering every distinct feature. `toolbar-acceptance.docx` includes actual toolbar output plus 13 styled native formula sizes; `studio-reference-current.docx` includes the explicitly corrected 18pt legacy sample. + +The current regression corpus is `../codebook-rich-format-cases.mjs`. Execute `npm run build_cc && npm run test:codebook`. The full matrix runs through both ESM and CommonJS and both score layouts. The existing independent original-Studio fixtures are retained; only the strictly asserted font-size correction and equivalent highlight hex spelling are normalized by the legacy comparison. + +These seven current documents (including `formula-compound-fixed.docx`) were rendered in Microsoft Office Web Viewer / Word: 262 captured pages, with each actual page number independently checked in its footer. The final bidirectional editor interchange produces the same complete normalized Word parts as the rendered matrix. See `docs/codebook-aspect-acceptance-2026-10-13.md`. The earlier fixture documents and package hashes above remain historical evidence. + +`formula-compound-before.docx` is a historical failing reference for wide accents and black control symbols. Its one page is retained separately and is not included in the 262 passing pages. The corrected counterpart includes a true wide underline as well. diff --git a/scripts/fixtures/word-acceptance/aspect-feature-specimen.docx b/scripts/fixtures/word-acceptance/aspect-feature-specimen.docx new file mode 100644 index 0000000..8ed548b Binary files /dev/null and b/scripts/fixtures/word-acceptance/aspect-feature-specimen.docx differ diff --git a/scripts/fixtures/word-acceptance/aspect-full-matrix.docx b/scripts/fixtures/word-acceptance/aspect-full-matrix.docx new file mode 100644 index 0000000..87e75d9 Binary files /dev/null and b/scripts/fixtures/word-acceptance/aspect-full-matrix.docx differ diff --git a/scripts/fixtures/word-acceptance/cc-feature-specimen.docx b/scripts/fixtures/word-acceptance/cc-feature-specimen.docx new file mode 100644 index 0000000..7d07d4c Binary files /dev/null and b/scripts/fixtures/word-acceptance/cc-feature-specimen.docx differ diff --git a/scripts/fixtures/word-acceptance/cc-full-matrix.docx b/scripts/fixtures/word-acceptance/cc-full-matrix.docx new file mode 100644 index 0000000..1fe256d Binary files /dev/null and b/scripts/fixtures/word-acceptance/cc-full-matrix.docx differ diff --git a/scripts/fixtures/word-acceptance/editor-combinations.docx b/scripts/fixtures/word-acceptance/editor-combinations.docx new file mode 100644 index 0000000..e82ead5 Binary files /dev/null and b/scripts/fixtures/word-acceptance/editor-combinations.docx differ diff --git a/scripts/fixtures/word-acceptance/format-boundaries-before.docx b/scripts/fixtures/word-acceptance/format-boundaries-before.docx new file mode 100644 index 0000000..9569377 Binary files /dev/null and b/scripts/fixtures/word-acceptance/format-boundaries-before.docx differ diff --git a/scripts/fixtures/word-acceptance/format-boundaries-source.json b/scripts/fixtures/word-acceptance/format-boundaries-source.json new file mode 100644 index 0000000..ce50de2 --- /dev/null +++ b/scripts/fixtures/word-acceptance/format-boundaries-source.json @@ -0,0 +1,54 @@ +{ + "html": "Vor ROT Schwarz GRUEN Ende
LISTE
EINRUECKUNG
", + "styles": [ + { + "tag": "P", + "text": "Vor ROT Schwarz GRUEN Ende", + "font": "20px", + "indent": "0px", + "align": "start" + }, + { + "tag": "H1", + "text": "H1", + "font": "20px", + "indent": "0px", + "align": "start" + }, + { + "tag": "H2", + "text": "H2", + "font": "18px", + "indent": "0px", + "align": "start" + }, + { + "tag": "H3", + "text": "H3", + "font": "16px", + "indent": "0px", + "align": "start" + }, + { + "tag": "H4", + "text": "H4", + "font": "16px", + "indent": "0px", + "align": "start" + }, + { + "tag": "OL", + "text": "LISTE", + "font": "20px", + "indent": "40px", + "align": "start" + }, + { + "tag": "P", + "text": "EINRUECKUNG", + "font": "20px", + "indent": "40px", + "align": "start" + } + ] +} \ No newline at end of file diff --git a/scripts/fixtures/word-acceptance/formula-compound-before.docx b/scripts/fixtures/word-acceptance/formula-compound-before.docx new file mode 100644 index 0000000..d25846e Binary files /dev/null and b/scripts/fixtures/word-acceptance/formula-compound-before.docx differ diff --git a/scripts/fixtures/word-acceptance/formula-compound-fixed.docx b/scripts/fixtures/word-acceptance/formula-compound-fixed.docx new file mode 100644 index 0000000..81f723d Binary files /dev/null and b/scripts/fixtures/word-acceptance/formula-compound-fixed.docx differ diff --git a/scripts/fixtures/word-acceptance/kodierbox-browser.docx b/scripts/fixtures/word-acceptance/kodierbox-browser.docx new file mode 100644 index 0000000..ebefffd Binary files /dev/null and b/scripts/fixtures/word-acceptance/kodierbox-browser.docx differ diff --git a/scripts/fixtures/word-acceptance/original-studio-no-scores.docx b/scripts/fixtures/word-acceptance/original-studio-no-scores.docx new file mode 100644 index 0000000..9701719 Binary files /dev/null and b/scripts/fixtures/word-acceptance/original-studio-no-scores.docx differ diff --git a/scripts/fixtures/word-acceptance/original-studio-scores.docx b/scripts/fixtures/word-acceptance/original-studio-scores.docx new file mode 100644 index 0000000..7f6a5dc Binary files /dev/null and b/scripts/fixtures/word-acceptance/original-studio-scores.docx differ diff --git a/scripts/fixtures/word-acceptance/rich-no-scores.docx b/scripts/fixtures/word-acceptance/rich-no-scores.docx new file mode 100644 index 0000000..2767a4f Binary files /dev/null and b/scripts/fixtures/word-acceptance/rich-no-scores.docx differ diff --git a/scripts/fixtures/word-acceptance/rich-scores.docx b/scripts/fixtures/word-acceptance/rich-scores.docx new file mode 100644 index 0000000..a9738e3 Binary files /dev/null and b/scripts/fixtures/word-acceptance/rich-scores.docx differ diff --git a/scripts/fixtures/word-acceptance/studio-browser.docx b/scripts/fixtures/word-acceptance/studio-browser.docx new file mode 100644 index 0000000..25e385f Binary files /dev/null and b/scripts/fixtures/word-acceptance/studio-browser.docx differ diff --git a/scripts/fixtures/word-acceptance/studio-reference-current.docx b/scripts/fixtures/word-acceptance/studio-reference-current.docx new file mode 100644 index 0000000..32a8f90 Binary files /dev/null and b/scripts/fixtures/word-acceptance/studio-reference-current.docx differ diff --git a/scripts/fixtures/word-acceptance/toolbar-acceptance.docx b/scripts/fixtures/word-acceptance/toolbar-acceptance.docx new file mode 100644 index 0000000..5a30372 Binary files /dev/null and b/scripts/fixtures/word-acceptance/toolbar-acceptance.docx differ diff --git a/scripts/verify-codebook-word-windows.ps1 b/scripts/verify-codebook-word-windows.ps1 new file mode 100644 index 0000000..3566144 --- /dev/null +++ b/scripts/verify-codebook-word-windows.ps1 @@ -0,0 +1,95 @@ +param( + [Parameter(Mandatory = $true)][string]$Directory +) +# Run on Windows with desktop Microsoft Word installed. Opens copies read-only; +# never saves changes to the DOCX sources. PDF and JSON are acceptance evidence, +# not a replacement for inspecting the rendered pages. +$ErrorActionPreference = 'Stop' +if ($env:OS -ne 'Windows_NT') { throw 'This check requires Microsoft Word on Windows.' } +$folder = (Resolve-Path $Directory).Path +$manifest = Get-Content (Join-Path $folder 'word-expectations.json') -Raw | ConvertFrom-Json +if (@($manifest.cases).Count -ne 3) { throw 'Expected three Word acceptance cases.' } +$suffixes = @($manifest.cases | ForEach-Object { $_.suffix } | Sort-Object -Unique) +if (($suffixes -join ',') -ne ',-rich-no-scores,-rich-scores') { throw 'Unexpected Word acceptance cases.' } +$word = $null +$results = @() +try { + $word = New-Object -ComObject Word.Application + $word.Visible = $false + $word.DisplayAlerts = 0 + $word.AutomationSecurity = 3 + foreach ($expected in $manifest.cases) { + foreach ($hostName in @('studio', 'kodierbox')) { + $name = "$hostName$($expected.suffix)" + $document = $null + try { + $path = Join-Path $folder "$name.docx" + # ConfirmConversions=false, ReadOnly=true, AddToRecentFiles=false. + # Open normally; do not request Word's OpenAndRepair mode. + $document = $word.Documents.Open($path, $false, $true, $false) + $document.Repaginate() + if ($document.Fields.Update() -ne 0) { throw "$name could not update all document fields." } + foreach ($section in $document.Sections) { + foreach ($footer in $section.Footers) { + if ($footer.Range.Fields.Update() -ne 0) { throw "$name could not update all footer fields." } + } + } + $document.Repaginate() + $pages = $document.ComputeStatistics(2) + $tables = $document.Tables.Count + $images = $document.InlineShapes.Count + $formulas = $document.OMaths.Count + $headings = @($document.Paragraphs | Where-Object { $_.OutlineLevel -eq 2 }).Count + if ($pages -lt 2) { throw "$name must exercise multiple pages." } + if ($tables -ne $expected.tables) { throw "$name lost tables: $tables / $($expected.tables)" } + if ($images -ne $expected.images) { throw "$name lost images: $images / $($expected.images)" } + if ($formulas -ne $expected.formulas) { throw "$name lost equations: $formulas / $($expected.formulas)" } + if ($headings -ne $expected.variableHeadings) { throw "$name lost variable headings." } + foreach ($table in $document.Tables) { + if ($table.Columns.Count -ne $expected.columns) { throw "$name has an incorrect table column count." } + if ($table.Rows.AllowBreakAcrossPages -ne 0) { throw "$name allows code rows to split across pages." } + } + $footerText = $document.Sections.Item(1).Footers.Item(1).Range.Text + if (-not $footerText.Contains('IQB Codebook')) { throw "$name is missing the footer label." } + $footerFields = $document.Sections.Item(1).Footers.Item(1).Range.Fields + $pageFields = @($footerFields | Where-Object { $_.Type -eq 33 }) # wdFieldPage + $totalFields = @($footerFields | Where-Object { $_.Type -eq 26 }) # wdFieldNumPages + if ($pageFields.Count -ne 1 -or $totalFields.Count -ne 1) { throw "$name lost PAGE or NUMPAGES." } + if ([int]$totalFields[0].Result.Text.Trim() -ne $pages) { throw "$name has an incorrect total page field." } + $pageValue = [int]$pageFields[0].Result.Text.Trim() + if ($pageValue -lt 1 -or $pageValue -gt $pages) { throw "$name has an incorrect current page field." } + $text = $document.Content.Text + if ($expected.hasMissingZero -and -not $text.Contains('0 Missing zero')) { throw "$name is missing Missing 0." } + $document.ExportAsFixedFormat((Join-Path $folder "$name-word-windows.pdf"), 17) + $results += [pscustomobject]@{ + case = $expected.suffix; file = "$name.docx"; pages = $pages; tables = $tables; images = $images; formulas = $formulas + text = $text; footer = $footerText; wordVersion = $word.Version; wordBuild = $word.Build + } + } finally { + if ($null -ne $document) { + $document.Close(0) + [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($document) + } + } + } + } + foreach ($group in @($results | Group-Object -Property case)) { + $pair = $group.Group + if ($pair.Count -ne 2) { throw 'Missing host document in Word comparison.' } + if ($pair[0].text -cne $pair[1].text) { throw "$($group.Name): different content in Word." } + if ($pair[0].pages -ne $pair[1].pages) { throw "$($group.Name): different page counts in Word." } + if ($pair[0].footer -cne $pair[1].footer) { throw "$($group.Name): different footers in Word." } + } + $report = [pscustomobject]@{ + checkedAtUtc = [DateTime]::UtcNow.ToString('o'); platform = 'Windows desktop Word' + automatedChecksPassed = $true; visualAcceptanceComplete = $false + documents = @($results | Select-Object case,file,pages,tables,images,formulas,wordVersion,wordBuild) + } + $report | ConvertTo-Json -Depth 5 | Set-Content (Join-Path $folder 'word-windows-result.json') -Encoding UTF8 + Write-Output 'Word checks passed. Inspect all six PDFs for page breaks, fonts, formulas, images and page fields before visual acceptance.' +} finally { + if ($null -ne $word) { + $word.Quit(0) + [void][Runtime.InteropServices.Marshal]::FinalReleaseComObject($word) + } +} diff --git a/tsconfig.json b/tsconfig.json index a4a04f6..40a826f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -14,6 +14,9 @@ "esModuleInterop": true, "skipLibCheck": true, "paths": { + "@iqb/ngx-coding-components/codebook-export": ["projects/ngx-coding-components/codebook-export/public-api.ts"], + "@iqb/ngx-coding-components/codebook-generator": ["projects/ngx-coding-components/codebook-generator/public-api.ts"], + "@iqb/ngx-coding-components/codebook-models": ["projects/ngx-coding-components/codebook-models/public-api.ts"], "@ngx-translate/core": [ "./node_modules/@ngx-translate/core" ],