90 | | * {{{replacements:}}} (angelegt per Hand; könnte man noch aufteilen in forbidden characters aus Schritt 2.03, escape sequences aus Schritt 2.05, special instructions aus Schritt 2.10; aber bringt das mehr Klarheit?) |
91 | | * {{{log:}}} (per Hand angelegt, immer wenn es nötig ist) |
| 90 | * {{{replacements:}}} (angelegt per Hand; könnte man noch aufteilen in forbidden characters aus Schritt 2.03, escape sequences aus Schritt 2.05, special instructions aus Schritt 2.10; aber bringt das mehr Klarheit? Aufgelöst in Schritt 3.02) |
| 91 | * {{{log:}}} (per Hand angelegt, immer wenn es nötig ist. Aufgelöst in Schritt 3.05, wo es in <dcterms:description> umgewandelt wird.) |
| 92 | |
| 93 | Jeden Block kann es höchstens einmal geben. |
| 94 | |
| 95 | Der Sinn der Aufteilung in Anlegen der Blöcke in Schritt 1 und 2 und Auflösen der Blöcke in Schritt 3 ist, dass man möglichst lange mit dem raw text arbeiten kann. Es soll außerdem möglichst lange nachvollziehbar bleiben, welche Änderungen an der aus China erhaltenen Version gemacht wurden. Erst in Schritt 5 wird die XML-Version des Textes ein Faktum an sich, das nicht mehr jederzeit neu aus dem raw text erzeugt werden kann. |
125 | | Das Skript [source:trunk/schema/scripts/workflow/Filter_2_02_sync_pb.pl Filter_2_02_sync_pb] schreibt die JPG-Dateinamen im {{{pageimg}}}-Block hinter die <pb> im Text. Die Zuordnung muss dann per Hand geprüft werden. Falls die Zuordnung nicht stimmt, muss das Skript rückgängig gemacht, die Dateinamen korrigiert und das Skript wiederholt werden. |
126 | | |
127 | | Das Skript macht also Änderungen im ganzen Dokument: {{{<pb>[001]}}} usw. Da die Zurdnung des Textes auf die Seiten Voraussetzung für das Arbeiten mit dem Text ist, wird der {{{pageimg}}}-Block im Gegensatz zu den anderen Blöcken bereits hier aufgelöst. |
128 | | |
129 | | entferne Dateinamen wie zzzz.jpg |
| 128 | Das Skript [source:trunk/schema/scripts/workflow/Filter_2_02_sync_pb.pl Filter_2_02_sync_pb] schreibt die JPG-Dateinamen im {{{pageimg}}}-Block hinter die <pb> im Text. Die Zuordnung muss dann per Hand geprüft werden. Falls die Zuordnung nicht stimmt, müssen die Dateinamen korrigiert und das Skript wiederholt werden. |
| 129 | |
| 130 | Das Skript macht also Änderungen im ganzen Dokument, zum Beispiel: |
| 131 | {{{ |
| 132 | <pb 25>[0037] |
| 133 | }}} |
| 134 | Da die Zurdnung des Textes auf die Seiten Voraussetzung für das Arbeiten mit dem Text ist, wird der {{{pageimg}}}-Block im Gegensatz zu den anderen Blöcken bereits hier aufgelöst. |
| 135 | |
| 136 | Entferne außerdem Dateinamen wie zzzz.jpg |
151 | | [source:trunk/schema/scripts/workflow/Filter_2_04_check_unknown_characters.pl Filter_2_04_check_unknown_characters] |
152 | | |
153 | | „unknown:“ |
154 | | ⟶ am Anfang: {{{<002> ꝑ (p.28: ok)}}} |
155 | | |
156 | | sollte die codes auch schon in die Datei schreiben, damit man sie nicht rüberkopieren muss |
| 160 | Das Skript [source:trunk/schema/scripts/workflow/Filter_2_04_check_unknown_characters.pl Filter_2_04_check_unknown_characters] |
| 161 | sammelt die im Text verwendeten Codes der Form {{{<001>}}} und schlägt jeweils passende Ersetzungen vor. Diese Vorschläge müssen per Hand geprüft werden. Beispiel: |
| 162 | {{{ |
| 163 | unknown: |
| 164 | <002> ꝑ |
| 165 | }}} |
| 166 | wird zu |
| 167 | {{{ |
| 168 | unknown: |
| 169 | <002> ꝑ (p.28: ok) |
| 170 | }}} |
| 171 | |
| 172 | Eventuell sollte das Skript die codes auch schon in die Datei schreiben, damit man sie nicht rüberkopieren muss. Allerdings würde das Skript dann sowohl Textänderungen machen als auch eine Liste von Problemen anzeigen. |
| 173 | |
162 | | auf und prüft dann, wo danach noch folgende Zeichen im Text sind: { \ |
163 | | |
164 | | Man muss dann jeweils entscheiden, ob diese geschweiften Klammern etc. in Ordnung sind oder nicht. |
165 | | |
166 | | Beispiel: Im Text wird die idiosynkratische Notation {ta} für eine Ligatur in kursiver Schrift verwendet. Im {{{replacements}}}-Block: {{{{ta} ta (vorläufig!)}}} |
| 179 | auf und prüft dann, ob danach noch folgende Zeichen im Text sind: { und \ |
| 180 | |
| 181 | Man muss dann bei jeder Fundstelle entscheiden, ob diese geschweiften Klammern etc. legitimerweise noch im Text sind oder ob das Skript in Schritt 3.01 nicht korrekt arbeitet. Beispiel: Im Text wird die idiosynkratische Notation {ta} für eine Ligatur in kursiver Schrift verwendet. |
| 182 | {{{ |
| 183 | replacements: |
| 184 | {ta} ta (vorläufig!) |
| 185 | }}} |
| 186 | |
| 187 | Einzelne Stellen können auch im Text selbst korrigiert werden. |
189 | | (noch nicht vollständig umgesetzt, funktioniert aber in der Praxis schon sehr gut) |
190 | | |
191 | | ⟶ replacements zum Beispiel: << « (lines 41 to 43) |
192 | | |
193 | | ⟶ oder zum Beispiel im ganzen Dokument: heads <⟶ running heads, etc. |
194 | | |
195 | | --> das Skript sollte alles vor dem ersten <pb> ignorieren |
196 | | |
197 | | mit [source:trunk/schema/scripts/script-tests/check_tags-testparcours.txt testparcours] |
| 210 | Die letzten Punkte sind noch nicht vollständig umgesetzt, aber das Skript funktioniert in der Praxis schon sehr gut. |
| 211 | |
| 212 | Wie bei Schritt 2.03 muss man jeweils entscheiden, ob eine Korrektur im Text selbst gemacht wird oder in den {{{replacements}}}-Block geschrieben wird. Beispiel: |
| 213 | {{{ |
| 214 | replacements: |
| 215 | << « (lines 41 to 43) |
| 216 | }}} |
| 217 | |
| 218 | Bei den Dingen, die in diesem Schritt geprüft werden, kann man unterscheiden in echte Fehler, die das Skript nicht korrigieren kann, und falsche Formatierungen, die das Skript selbst korrigieren könnte. Beispielsweise könnte das Skript selbst ein return einfügen, wenn <tb> nicht auf einer eigenen Zeile steht. Aber zum Beispiel gibt es in den DESpecs die Regel, dass eine heading <h> auf eigener Zeile stehen muss, ein running head <rh> dagegen auf der gleichen Zeile wie das zugehörige <pb>. Wenn dies nicht beachtet wurde, ist meistens nicht klar gewesen, ob eine Textzeile eine Überschrift oder ein running head ist. Aufgrund von solchen Fällen verändert das Skript den Text nicht selbst. (Es könnte allerdings regexes vorschlagen, die der User verwenden kann.) |
| 219 | |
| 220 | Das Skript ignoriert alles vor dem ersten <pb>. |
| 221 | |
| 222 | Für dieses Skript gibt es einen [source:trunk/schema/scripts/script-tests/check_tags-testparcours.txt testparcours]. |
209 | | [source:trunk/schema/scripts/workflow/Filter_2_09_check_tables.pl Filter_2_09_check_tables] |
210 | | |
211 | | was immer das genau machen wird: prüfe die "syntaktische Korrektheit" der tables |
212 | | |
213 | | wie wird das in den raw text geschrieben? schon mit korrektem xhtml ist vielleicht etwas viel Aufwand. noch eine Zwischensprache, oder was ist da überhaupt zu tun? |
| 232 | Das Skript [source:trunk/schema/scripts/workflow/Filter_2_09_check_tables.pl Filter_2_09_check_tables] prüft die "syntaktische Korrektheit" und die Plausibilität der tables. Was das genau bedeutet, ist noch nicht ganz klar. (Es wird jedenfalls nicht geprüft, ob die Tabelle das Original korrekt wiedergibt.) Es ist auch noch nicht ganz klar, wie eventuelle Korrekturen in den raw text geschrieben werden, d.h. ob sie in der Syntax der DESpecs hineingeschrieben werden oder schon als xhtml. Wenn als xhtml, muss es von den folgenden Skripten ignoriert werden. In beiden Formen muss es in Schritt 4.02 aus dem Absatz herausgezogen werden. |
218 | | [source:trunk/schema/scripts/workflow/Filter_2_10_special_instructions_for_xxxxxxxx Filter_2_10_special_instructions_for_xxxxxxxx] |
219 | | |
220 | | (bei manchen Texten wird es einfacher sein, es statt mit einem Skript per Hand zu machen) |
221 | | |
222 | | ⟶ am Anfang: {{{--] < (i.e. "--]" becomes "<"; see p.0018 and "DESpecs_special_batch3.pdf")}}} |
223 | | |
224 | | ⟶ auch im ganzen Dokument? |
| 237 | Für einzelne Texte oder Work Orders kann es Skripte der Form [source:trunk/schema/scripts/workflow/Filter_2_10_special_instructions_for_xxxxxxxx Filter_2_10_special_instructions_for_xxxxxxxx] geben. Bei manchen Texten mit Special Instructions wird es einfacher sein, die nötigen Anpassungen statt mit einem Skript per Hand zu machen. Beispiel Barrow 1674: |
| 238 | {{{ |
| 239 | replacements: |
| 240 | --] < (i.e. "--]" becomes "<"; see p.0018 and "DESpecs_special_batch3.pdf" |
| 241 | [-- > |
| 242 | }}} |
| 243 | (Schöner wäre es, wenn die entsprechende Zeichen durch Unicode-Mathematik-Zeichen angenähert werden könnten und die modernen Zeichen erst in der MathML-Formel verwendet werden. Leider gibt es diese Zeichen so nicht in Unicode. Der Umgang mit veralteter mathematischer Notation ist noch nicht vollständig geklärt.) |
| 244 | |
| 245 | Aber zum Beispiel die Special Instructions für die Tabellen am Ende von Berzelius 1819 könnten mit einem Skript weiterverarbeitet werden. |