ARBEITEN MIT ARBOREAL Version 0.5 Günther Görz, März/Juni 2008/ Juli 2008 / März 2009 Zeilen mit # in der ersten Spalte zeigen Klärungsbedarf an. Konfigurationsdateien: Verzeichnis "arboreal" im home-Verzeichnis, darin als Grundausstattung - properties.xml (Konfigurationsdatei) - Unterverzeichnis "scripts" mit Dateien zur Konfiguration des "Transform"-Menüs (zweiter Abschnitt) : ficus.xsl, GenerateIDs.xsl, InsZWSP.xsl, Make1-1Matching.xsl, MakeTemplate.xsl Um Text- und Bilddateien gruppieren und zusammenfassen zu können, wird die (Archimedes) "Bundle Structure" ausgenutzt: - Das aktuelle Verzeichnis enthält die Datei catalog.xml, in der die Struktur des Bündels beschrieben ist; - die Texte liegen im Unterverzeichnis "texts"; - DTDs im Unterzeichnis "dtd"; - "morphology" dient für die Dateien mit den morphologischen Analysen und Terminologielisten; - "matching" (Abbildung Master-Slave--Texte). - Abbildungen können in einem Unterverzeichnis "figures" gespeichert werden; für die Seitenbilder sind nach der "Locator"-Konvention Unterverzeichnisse 01, 02, etc. festgelegt. Die Codierung erfolgt nach den Vorgaben der "Text Encoding Initiative" (TEI). Als Vorlage dient das Verzeichnis "TEI-Bundle". Hinweis: - Um spezielle für Handschriften entwickelte Erweiterungen nutzen zu können, kann z.B. auf die Konventionen des "Digital Scriptorium" (Berkeley/Cornell) zurückgegriffen werden, wie sie in ds3.dtd definiert sind. Dafür steht die TEI-"Rahmendatei" _frame.TEI.xml zur Verfügung. Zusätzlich sind dann die Dateien ds2xslt.xsl, ISOlat1.pen, ISOlat2.pen, ISOnum.pen, ISOpub.pen bereitzustellen. - Die aktuelle Version von Arboreal ist in bestimmten Teilen für aktuelle Projekte des Berliner Max-Planck-Instituts für Wissenschaftsgeschichte mit Forschungspartnern eingerichtet, insbesondere für das Archimedes-Projekt zur Geschichte der Mechanik: http://archimedes.mpiwg-berlin.mpg.de/ . In dieser Konfiguration wird im Verzeichnis "dtd" erfordert: - archimedes.dtd - archimedes.pen - ISOlat1.pen, ISOlat2.pen, ISOnum.pen, ISOpub.pen . Beispieltext für das Folgende: Datei "invitatio_korr.txt" Präambel des "Deutschen Ptolemaeus" (Nürnberg?, ca. 1490): "Inuitatio lectoris..." 01. Einfügen des Textes in _frame.TEI-ds3.xml und speichern als invitatio.TEI-ds3.xml . Achtung: Der Zeilenvorschub (^J) wird als Teil eines Worts angesehen, wenn er nicht vom Wort durch einen Zwischenraum getrennt ist! # (Kann bei word-separators in docspecs.xml festgelegt werden?) 02. Datei in Arboreal laden, z.B. "Pick local file" : --- /texts/invitatio.TEI-ds3.xml Anmerkungen: - Im linken Fenster werden alle Tags "indexiert" angezeigt (), was in der DTD so voreingestellt ist. - Die Zeilenvorschübe und Tabs in der Datei werden im rechten Fenster nicht angezeigt, wenn unter Preferences | Misc. das Häkchen bei "Ignore tabs and line terminators in containers" gesetzt ist; die ganze div1 steht in einer langen Zeile. # Kann das durch eine -Deklaration behoben werden? # Ist das Häkchen gesetzt, wird jedoch der Inhalt des Containers # im LINKEN Fenster nicht angezeigt; klickt man in die # (vermeintlich) leere Zeile unterhalb von div1, erscheint die # Anzeige im rechten Fenster mit den korrekten Zeilenumbrüchen. - Arboreal bleibt beim Einlesen an der Stelle des ersten Fehlers mit einer Meldung stehen. Bei der Zeilenzählung werden auskommentierte Zeilen nicht berücksichtigt, da die Zeilennummern direkt vom SAX-Parser übernommen werden. 03. Neuen Katalog erzeugen: - "File > Add to catalog" : Fügt geladene Datei hinzu - "File > Write new catalog" : speichern, z.B. mit Name "catalog.xml" * Der catalog dient der Abbildung abstrakter auf reale URIs s. "The Arboreal Catalog System" & "Archimedes Bundle Structure" "Arboreal's catalog system allows for abstract URIs in a document to be mapped to real URIs. The abstract URI functions as a permanent identifier for an object." # * In ATTLIST catalog ist automatisch ein Link auf # http://archimedes.fas.harvard.edu/arboreal/catalog/1.1 eingetragen. # Die Konfiguration ist offensichtlich in # arboreal.app/ --- /skeletons/newcatalog.xml festgelegt! 04. IDs erzeugen mit "Transform > Generate IDs" für

-, - und -Tags (aber auch , , , , , und ). - Es wird ein neuer Buffer erzeugt. - Speichern mit "File > Save modified files". Als Standardname wird NewDocument1 vorgeschlagen. Neuen Namen eingeben, z.B. invitatio-ID.TEI-ds3.xml Alternativ: Ins Textfenster klicken, "Save XML document" (rot unterlegt) wählen. - Zu beachten: * die xml-stylesheet-Direktive wird eliminiert. # * Beachten, ob in # der korrekte Pfad gesichert wird, nicht nur "ds3.dtd" ; # dies würde beim späteren Laden zu einer Fehlermeldung führen. # * Wird erneut "File > Add to catalog" und "File > Write new catalog" # ausgeführt, so steht nicht der neue Dateiname im catalog, sondern # # # # (s. Datei TEI-Bundle/catalog.xml) # * Klicken ins Textfenster, "show info" zeigt fehlerhafte Daten: # ... # Locator: NewDocument1 # Filename: NewDocument1 ?? # Language: English ?? # Docspec: [default] # Modified: no 05. Wörter einzeln auszeichnen: "Transform > Tag words" - Speichern des neuen Buffers mit "File > Save modified files". Als Standardname wird NewDocument2 vorgeschlagen. Neuen Namen eingeben, z.B. invitatio-ID-words.TEI.xml - Hinweis: * Um zu verhindern, dass alle Wörter, auch die im TEI-Header, ausgezeichnet werden, muss in der docspecs.xml-Datei für den betreffenden Dokumenttyp der teiHeader durch eine metadata-Deklaration ausgeschlossen werden. Die neue docspecs.xml-Datei muss in (home) /arboreal/ stehen. * In docspecs.xml (neu) wird nur "p" als container ausgezeichnet. - Für jedes Wort wird auch noch das Attribut "norm" mit dem Wert = Wortform erzeugt (redundant?!) # - Problem: Kann nicht mit Silbentrennung Teil1- teil2 umgehen! # Zu Silbentrennung: s.u. WEITERFÜHRENDES # - Wird erneut "File > Add to catalog" und "File > Write new catalog" # ausgeführt, so steht nicht der neue Dateiname im catalog, sondern # # # - Die Funktion "Transform > Extract words" erzeugt eine Wortliste. Speichern unter NewDocument3.xml (Extension manuell ergänzen!) # Problem: statt xml:lang="la" wird lang="la" eingetragen. 06. Morphologische Analyse mit DONATUS: - Zunächst mittels "Edit > Select subtree(s)" den Teilbaum auswählen, dessen Wörter analysiert werden sollen. "Transform > Tag words" muss zuvor ausgeführt worden sein! - Ins Textfenster klicken, "Morphology > Acquire Analyses from Donatus" Bestätigung abwarten: "Acquired morphological data from Donatus" Frage folgt: Would you like to load unparsed items as terms? Yes/No - YES: ("Parasitic use of terminology for easy highlighting"...) Terms können können später gespeichert werden. - NO : "Terms" zeigt keine Optionen für "unparsed items" an - Morphologiedaten speichern: Nochmals ins Textfenster klicken, "Morphology > Save morphology as": invitatio-ID.morph.xml ; enthält die erfolgreichen morphologischen Analysen, alphabetisch sortiert. - Morphologische Analysen anzeigen: Links ein Wort auswählen, Wortform im Textfenster anklicken, "Show Morphology": Morphology-Fenster öffnet (Basic forms, variants) - Verwendung einer vorhandenen Morphologiedatei: - Wort mit rechter Maustaste anklicken, "Show morphology" wählen. - Auf die Anfrage "Choose a morphology file for ..." eingeben : invitatio.morph.xml (in TEI-Bundle/morphology/ vorhanden). 07. Save "unparsed terms": - "Terms > Save terms" : invitatio.unparsed.xml ("Save terms as" nicht verwenden!) Fordert man die morphologische Analyse für das erste Wort, "Inuitatio", wird nichts angezeigt - offenbar wird diese Schreibvariante nicht erkannt. Daher muss es in "unparsed" stehen; das ist der Fall! - "Terms > View/edit terms" öffnet Term Editor-Fenster. 08. Anzeige der morphologischen Analysen und Lexikonzugriff - Im Textfenster Wortform anklicken, z.B. "cosmographiam" - Aus sich öffnendem Menü "show Morphology" wählen - Morphologiefenster öffnet sich und zeigt "Basic forms" sowie "Variants" im aktuellen Text. - Anklicken der "Basic form" (z.B. "cosmographia") : Dictionary-Fenster öffnet sich (Lewis & Short oder Cooper wählbar). Button "View in Browser": Anzeige desselben Inhalts im Default-Browser (Mac: Safari) - Anklicken von "cosmographiam" in "Variants..." öffnet neues Fenster mit dem Text und zeigt die Vorkommen farbig unterlegt an. 09. Terminology Editor (state/mode based): - Ins Textfenster auf ein Wort klicken (z.B. "cosmographia"), öffnet Term Editor Fenster "Click on the term to which you'd like to attach the part(s) below" * Terms und Instances sind noch leer * "Terms > New" : Lege neuen Term an: (Latin!) cosmographia, transl. cosmography, parts: 1 * Dann wird Mittelfenster grün unterlegt * Instances Add: Instances-Fenster wird gefüllt, Mittelfenster rot unterlegt. ("The part(s) below have been marked as an instance of 'cosmographia' " - term is boxed in text window) - Vorhandene Terminologiedatei benutzen: "Terms > Load termlist"; Datei terminology/newtermlist.xml angeben; sie enthält den Terminus "cosmographia". Anklicken vom "cosmographiam" im Textfenster öffnet Term Editor. 10. Termlisten - ggf. Erzeugung einer neuen (leeren) Termliste: "Terms > New Terms" - Mit "copy term" wird der Terminus in eine Termliste übernommen. - Speichern: "Terms > Save termlist" 11. Suche "Edit > Find" - Auswahl: Elemente, IDs, Attribute, Text - Suche mit regulären Ausdrücken muss in Klammern eingeschlossene Gruppen verwenden; die Anzahl der Gruppen muss mit der Anzahl der Teile der Terme übereinstimmen, z.B. (gravitatis).?(centr.*)\b() Term-1.Teil Term-2.Teil \b = Wortgrenze, () = leere Gruppe 12. Textvergleich in zwei parallelen Fenstern: Master- und Slave-Text "Slave texts may be associated with a master text and matching document in catalog files." Start von Arboreal mit dem Text "invitatio-ID.TEI-ds3.xml" Dann muss der neue Katalog "mycatalog.xml" geladen werden; die dazu passende matching-Datei ist matching/matching.xml : - "File > load catalog" : mycatalog.xml - "File > load slave texts" : invitatio-deutsch-ID.TEI-ds3.xml 13. HTML-Datei erzeugen mit ds2xslt.xsl: "Transform > XSL transform". Speichern unter invitatio.TEI-ds3.html 14. Links zu Seiten-Bildern einfügen --- FICUS: "Transform > FICUS" - "XSL --- Enter a value for the parameter 'image-series'": (Pfad/URL) Default-Wert nach Archimedes-Konvention ist " 01 ". Fügt in jedes pb als Attribute ein: # Achtung: /01/ muss manuell zu ../01/ verbessert werden; # Bild wird dann mit "Open link" im Textfenster-Menu angezeigt. - Versuch mit einer Pfadangabe (statt URL) führt wohl zu einem korrekten Eintrag, z.B. /Users/goerz/project/mappae/texte/dt_ptolemaeus/TEI-Bundle/01 . # Die Kommandos aus dem Textfenster-Menü "Open link", "Jump to node" # und "Show new page image" sind aber wirkungslos # (auch wenn vorab der Browser mit dem digilib-Anzeigeprogramm # gestartet wurde --- digilib erwartet offenbar das Bild an # anderer Stelle). s. page-image in docspecs.xml: Link zum Seitenbild bei pb einfügen: 15. Illustrationen verknüpfen - Einfügen lokaler Bilder, z.B.
Kommando "Open link" führt zur Anzeige des Bilds (Mac: Preview). # - Allerdings ergibt der Link zu einem digilib-Bild (Aufruf von # digilib.jsp bzw. diginew.jsp im Browser) folgenden Fehler: # "Couldn't open the web page. Exception in finding web browser: # Invalid MRJ version: b05-303". ---------------------------------------------------------------------- WEITERFÜHRENDES ** XML-Dateien aus skeletons/ sind im compilierten Arboreal als Default vorhanden; sie sind adressierbar durch arboreal:skeletons/docspecs.xml ** CONTAINER: - declared container: defined in docspecs; - default container: any node which has one child which is a CDATA note ("text"); - pseudo-container: node where the first node is a CDATA and the other ones are embedded children which are not text nodes. ** Zur Silbentrennung: Orthographische Normalisierung als Option bei der Suche. # Z.Zt. manuell für einige Sprachen codiert, soll parametrisiert # werden. ** Überlappende Teilstrukturen --- Overlay Tagging wird nur für Mehrwort-Termini benutzt "The problem of the hierarchical nature of XML documents is handled via the notion of overlay tagging, whereby overlapping structures are represented as collections of links or pointers into the source XML text rather than as elements within the text itself. This is the strategy underlying terminology annotation in Arboreal. Since multi-word terms may be discontinuous and interlaced with one another, they cannot be tagged as XML elements in the source text itself; but there is no problem if the information is stored as links in separate XML documents. Similarly, different attempts to divide the Euclidean proposition into constituent parts could easily result in overlapping structures; the only way to allow for such possibilities is via overlay tagging. Overlay tagging has the further great advantage of separating annotation from changes to the source text; this enables multiple users to make different annotations to the same sources without conflicting with one another." ** Transformationen allgemein: "Transformations may be added to the Transform menu. Simply add an XSLT document to the scripts directory located beneath the Arboreal preferences (arboreal) directory. The document should contain a processing directive that provides a menu item name for Arboreal, e.g. " ** Die Terminologie-Nutzung und -Verwaltung muss noch vertieft werden. Kommentar: "A basic feature is the ability to annotate individual words or groups of words as terms. Each term has a single name, language, and translation, as well as a fixed number of parts. Terms may have multiple instances, depending on the number of times they occur in a given text or set of texts; each instance consists of a set of parts, i.e. words in the XML text. Terms are stored in termlists, which can be saved as XML files. When a termlist is loaded into Arboreal, every instance of every term in the list is highlighted in the content pane. The handling of terminology is facilitated by the term editor, a secondary window which displays all the terms in a given termlist along with references to their instances in the text. The user can add instances of a term either by clicking on words in the content pane and selecting the appropriate option from the pulldown menu or by dragging search results directly into the term editor; the latter option makes it easier to create extensive termlists for a given text or set of texts. Using the sophisticated search facilities of Arboreal including morphological forms and regular expressions, candidates for a term can be easily searched and displayed in a separate window as well as highlighted in the master text window. Working in this way on the terminology, a term list can be created and instances can be attached to the list. Such lists can be saved and reloaded, and even used for seeding the terms to other texts. Each of the terms in this list is linked to instances in the master text that have been identified as pertaining to the relevant term. The instances already identified can now actually be used to navigate further through the text, thus providing a powerful example of content-based access." ----------------------------------------------------------------------