Text Encoding Initiative

TEI Crashkurs + Workshop, 27.09.2021

Text Encoding Initiative (TEI): Crashkurs und Workshop

Ringvorlesung: Einblicke in die Digital Humanities, Fokus Editionen  TEI-Crashkurs und -Workshop  Peter Dängeli, 27.09.2021
TEI Crashkurs + Workshop, 27.09.2021
Inhalt

Teil 1: Crashkurs


Ringvorlesung: Einblicke in die Digital Humanities, Fokus Editionen

Universität Bern, Digital Humanities

Peter Dängeli, 27.09.2021


Leitfragen

  • Was ist die TEI?
  • Wie sind TEI-Encodings strukturiert?
  • Lassen sich auch Metadaten beschreiben?
  • Wie lässt sich ein Datenmodell formal kodifizieren und wie kann Konformität der Daten garantiert werden?
  • Für welche Projekte eignet sich TEI und was ist eine angemessene Tiefe des Encodings?
  • Wo gibt es weiterführende Informationen und wie kann man sich aktiv beteiligen?

Hintergrund und Grundlagen

Die TEI in aller Kürze

Die Guidelines der Text Encoding Initiative sind ein quelloffener, community-basierter, mehrsprachiger (Quasi-)Standard für digitale Forschung an und mit Texten. Sie geben Forscherinnen und Forschern ein Vokabular und eine Methode an die Hand, mit der hoch-expressive und kritische Versionen von Texten erstellt werden können (wobei Text weit aufzufassen ist und auch audiovisuelle Quellen einschliessen kann).

Gegenüber Textverarbeitungsprogrammen, Tabellenblätter, Datenbankanwendungen Tools zur Erstellung von Websites (wie etwa Wordpress) zeichnet sich die TEI durch folgende Punkte aus:

  • Inhalt/Bedeutung vor Form/Erscheinung (Separierung und Priorisierung)
  • Software-Unabhängigkeit
  • Community-Entwicklung (gemeinschaftliche Entwicklung der Richtlinien, zugleich aber auch Entwicklung der Gemeinschaft durch Diskussion/Teilhabe)

Ein Textencoding im Sinne der TEI zielt nicht auf die Reproduktion eines Texts als Kopie, sondern seine (selektive) Reproduktion in einer Form, die diverse Nutzungszwecke begünstigt, sowohl durch menschliche Rezipienten als auch durch maschinelle Verarbeitung. Die Festlegung der konkreten Umsetzung kann dabei immer auch als Forschungstätigkeit betrachtet werden, die auf bewussten Entscheidungen basiert.

Die TEI-Guidelines definieren rund 600 Konzepte in Form einer Beschreibung und Abgrenzung des intendierten Einsatzzwecks sowie einer technischen Spezifikation bzw. der Zuweisung jeweils bestimmter XML-Elemente und Elementklassen. Die meisten Forschungsprojekte kommen mit einem Bruchteil der gebotenen Optionen aus und es ist gute Praxis, die verwendeten Teilmenge aus dem gesamten TEI-Inventar in einer eigenen Dokumentation zu pflegen.

Historische Entwicklung der TEI

1987 Inangriffnahme eines Standardisierungsefforts (durch ACH / ACL / ALLC)
│  13.11.1987: TEI PCP1 "CLOSING STATEMENT OF THE VASSAR PLANNING CONFERENCE"
│
└── 1990 ❰ P1 ❱
  │   07.1990: erstes öffentliches Proposal "Guidelines for the Encoding and Interchange
  │            of Machine-Readable Texts" (Ed. M. Sperberg-McQueen, L. Burnard)
  │
  └── 1992 ❰ P2 ❱  Weiterentwicklung durch vier Working Committees und diverse AGs
    │
    └── 1994 und 1999 ❰ P3 ❱ "Guidelines for Electronic Text Encoding and Interchange"
      │                      439 Elemente, 1292 Seiten; Ziele von 1987 gelten als erreicht
      │
      └── 1999 / 2000 TEI-Konsortium
        │
        └── 2002 ❰ P4 ❱ 441 Elemente; SGML, XML (neu); Rückwärtskompatibilität bewahrt
          │ Angestrebte (reine) Fehlerkorrektur führte zu Identifikation neuer Potenziale.
          │
          └── 2007 ❰ P5 ❱ Reorganisation und Revision; keine Rückwärtskompatibilität zu P4
                          laufende Fortentwicklung, zuletzt 31.08.2021: TEI P5 4.3.0

Wie entwickeln sich die Guidelines?

Ein Beispiel dafür ist das in v4.3.0 (Codename dot-dot-dot) neu eingeführte Element ellipsis:

  • Bedürfnisartikulation und Diskussion auf der Mailingliste (23.04.2019) 🔗 listserv.brown.edu
  • 30.04.2019 Github-Issue 🔗 github.com
    • Diskussion 15.-20.11.2019
    • Implementation und Tests 03.07.-18.08.2021
    • Übernahme in die Entwicklungsversion am 24.08.2021
  • Veröffentlichung als Teil von v4.3.0 am 31.08.2021
    • Neues Element ellipsis 🔗 tei-c.org

      <ellipsis> (deliberately marked omission) indicates a purposeful marking in the
      source document signalling that content has been omitted, and may also supply or
      describe the omitted content.

Guidelines P1 - P5

         `¿¿,
           ²ª╣▒╖     TEI-Proposals
¿              ╙▒      └── 1990 ❰ P1 ❱           DOI: 10.5281/zenodo.3459203
▒j ▀██▀ █▀▀ ██ j▒L       └── 1992 ❰ P2 ❱         DOI: 10.5281/zenodo.3459221
╣░  ▐█  █▀▀ ██ j▒L         └── 1994 ❰ P3 ❱       DOI: 10.5281/zenodo.3549598
╣░   ▀  ▀▀▀ ▀▀  ▒L           └── 2002 ❰ P4 ❱     DOI: 10.5281/zenodo.3549616
`╝║¿.                          └── 2007 ❰ P5 ❱   DOI: 10.5281/zenodo.5347789
   `ª▒¿.

Weitere historische Materialien: 🔗 https://tei-c.org/Vault/

Vassar College Conference (Konferenz der Association for Computers and the Humanities (ACH)), Poughkeepsie 1987 🔗 tei-c.org
Konferenzteilnehmer
Konferenzteilnehmer
  • Helen Aguera, National Endowment for the Humanities
  • Robert A. Amsler, Bell Communications Research
  • David T. Barnard, Queen’s University, Kingston, Ontario
  • Lou Burnard, Oxford University Computing Service
  • Roy Byrd, IBM Research
  • Nicoletta Calzolari, Istituto di Linguistica Computazionale C.N.R.
  • David Chesnutt, University of South Carolina
  • Yaacov Choueka, Bar-Ilan University, Ramat-Gan, Israel
  • Jacques Dendien, Institut National de la Langue Française
  • Paul A. Fortier, University of Manitoba, Winnipeg, Manitoba
  • Thomas Hickey, Consulting Research Scientist, OCLC Online Computer Library Center
  • Susan Hockey, Oxford University Computing Service
  • Nancy M. Ide, Vassar College
  • Stig Johansson, University of Oslo
  • Randall Jones, Brigham Young University
  • Robert Kraft, University of Pennsylvania
  • Ian Lancashire, University of Toronto
  • D. Terence Langendoen, City University of New York
  • Charles (Jack) Meyers, National Endowment for the Humanities
  • Junichi Nakamura, Kyoto University, Japan
  • Wilhelm Ott, Universität Tübingen
  • Eugenio Picchi, Istituto di Linguistica Computazionale C.N.R.
  • Carol Risher, Association of American Publishers, Inc.
  • Jane Rosenberg, National Endowment for the Humanities
  • Jean Schumacher, CETEDOC
  • J. Penny Small, Lexicon Iconographicum Mythologiae Classicae
  • C. M. Sperberg-McQueen, University of Illinois at Chicago
  • Paul Tombeur, Director, CETEDOC
  • Frank Tompa (New OED Project, Waterloo), Bell Communications Research
  • Donald E. Walker, Bell Communications Research
  • Antonio Zampolli, Istituto di Linguistica Computazionale C.N.R.

Die TEI als Ökosystem

  • Heimat der Guidelines: https://tei-c.org

  • lebendige und zugängliche Entwickler- und Nutzercommunity

  • Software-Angebot zur Customisierung, Validierung, Transformation, Präsentation

  • gute Verankerung im weiteren technischen Umfeld (v.a. XML und verwandte Felder)


XML als Basis der aktuellen Umsetzung der TEI

  • XML als Metasprache bzw. XML als Allzweck-Markupsprache, mit der sich zweckgerichtete Markupsprachen (wie die TEI) ausdrücken lassen

  • Maschinen- und Menschenlesbarkeit als Ziel

  • Kriterium der syntaktischen Wohlgeformtheit/Well-formedness: Eine XML-Dateien muss wohlgeformt sein, d.h. sie muss einen hierarchischen Aufbau haben (keine überlappenden Elemente), jedes Element/jedes Attribut/jeder Kommentar muss abgeschlossen sein und referenzierte Entitäten müssen deklariert sein. Nicht wohlgeformte Dateien werden vom Prozessor nicht verarbeitet.

  • Kriterium der semantischen Validität/validity: Wenn einer XML-Datei ein oder mehrere Schemata zugewiesen sind, kann sie valide oder invalide sein.

  • Das der TEI zugrundeliegende Modell von Text als ordered hierarchy of content objects (OHCO-Modell) harmoniert gut mit der XML-Baumstruktur, provoziert aber auch viel Kritik.

  • Der ODD-Ansatz der TEI wurde in den letzten Jahren stärker integriert und dadurch technologie-unabhängig. An die Stelle von XML könnte damit (theoretisch) ein anderes Format treten.

  • Nützliche Einstiegsressourcen:


TEI und Texttheorie

Text als ordered hierarchy of content objects
                             Text
                  ┌────────────┴────────────┐
               Kapitel 1                 Kapitel 2
     ┌────────────┼────────────┐            ├─────────┐
   Titel        Para 1       Para 2       Titel     Para 1
     ┌────────────┼────────────┐            |
   Satz 1       Satz 2       Satz 3       Satz 1

Nach DeRose, Steven J.; Durand, David G.; Mylonas, Elli; Renear, Allen H. “What is text, really?” Journal of Computing in Higher Education. Vol. 1, issue 2 (1990): 3-26.

aber auch
                             Text
                  ┌────────────┴────────────┐
               Seite 1                    Seite 2
     ┌────────────┼────────────┐            ├─────────┐
   Zeile 1      Zeile 2      Zeile 3     Zeile 1     Zeile 2

Texte bestehen aus mehreren meist in Konkurrenz stehenden logischen Hierarchien (“overlap”). Z.B. Vers/Verszeile vs. Satz oder Absatz vs. Seite.

Das führte zu einer Verfeinerung der OHCO-These: eine analytische Perspektive auf einen Text kann einer geordneten Hierarchie entsprechen.

Zur OHCO-These und Kritik an ihr vgl. z.B. Patrick Sahle, Digitale Editionsformen. Zum Umgang mit der Überlieferung unter den Bedingungen des Medienwandels. Teil 3: Textbegriffe und Recodierung, 2013, S. 157-183. 🔗 URN urn:nbn:de:hbz:38-53534

Seit der Einführung des sourceDoc-Elements in P5 v2.0 in 2011 stellen die TEI-Guidelines eine Möglichkeit bereit, die Dokumentlogik über die Textlogik zu priorisieren. Unter Inkaufnahme beträchtlicher Redundanz kann ein Editionsprojekt auch beide Ansätze parallel verfolgen (ein Beispiel dafür ist die digitale Faust-Edition, vgl. die ausführliche Beschreibung in Anne Bohnenkamp et al., Perspektiven auf Goethes ›Faust‹. Werkstattbericht der historisch-kritischen Hybridedition, 2012, S. 41-54. 🔗 URN urn:nbn:de:bvb:20-opus-76823.


Warum TEI?

Kriterium PDF TXT DOCX XHTML TEI XMI TCF
1. Repräsentation der Zeichensequenz o + + + + + +
2. Textstruktur / Layout + - + o + o o
3. Editionswiss. Phänomene - - - - + o o
4. Linguistische Information - - - - o + +
5. Kontext / Metadaten o - - o + - -
6. Menschen- und maschinenlesbar o + o + + - o
7. Langfristige Nutzbarkeit o + - + + + +

Quelle: Christof Schöch, Ein digitales Textformat für die Literaturwissenschaft. Die Richtlinien der Text Encoding Initiative und ihr Einsatz bei Textkonstitution und Textanalyse. Romanische Studien, Nr. 4, S. 325–364, Jun. 2016. https://romanischestudien.de/index.php/rst/article/view/58


TEI – immer die richtige Wahl?

Für manche Zwecke passen andere Formate und Werkzeuge besser (z.B. Nodegoat, relationale Datenbanken).


Literatur zur TEI

  • Lou Burnard, What is the Text Encoding Initiative? How to add intelligent markup to digital resources 🔗 DOI 10.4000/books.oep.426 (Open access)
    • Mehrere der nachstehenden TEI-Beispiele entstammen dieser Publikation.
  • Ron van den Branden und Edward Vanhoutte (Ed.), TEI by Example (https://teibyexample.org/)
  • Christian Wittern et al., 2009, The making of TEI P5, Literary and Linguistic Computing, Vol. 24, Nr. 3, S. 281-96 🔗 DOI 10.1093/llc/fqp017
  • Diverse Tutorials online

Wie codiert man Texte nach den TEI-Richtlinien?

Grobe Gliederungsstruktur I: Header und Encoding

Jedes TEI-Dokument folgt einer bestimmten Gliederungsstruktur.

Auf den obersten Ebenen sind nur wenige, darunter aber zahllose Variationen möglich.

<TEI xmlns="http://www.tei-c.org/ns/1.0">
  <teiHeader>
    <!-- Metadaten, die den Text beschreiben. -->
  </teiHeader>
  <text>
    <!-- Die Repräsentation des eigentlichen Texts. -->
  </text>
</TEI>

Dem Wurzelelement (hier TEI; alternativ auch teiCorpus) ist der Namensraum (namespace) http://www.tei-c.org/ns/1.0 zugewiesen. Diese Zuweisung identifiziert das Element als Teil des TEI-Vokabulars und unterwirft es den formalen Regeln der TEI. Sie erstreckt sich auch auf tiefer angesiedelte Elemente, sofern diese keine eigene und abweichende NS-Zugehörigkeit aufweisen.

Ein valides TEI-Dokument besteht aus mindestens zwei Bestandteilen:

  • dem teiHeader in dem Metadaten zum Dokument und seiner Beschreibung erfasst werden
  • einem Element, in dem das eigentliche Encoding (oder ein Surrogat) untergebracht wird. Typischerweise handelt es sich um das text-Element, möglich sind aber auch facsimile, sourceDoc (seit P5 v2.0), standOff (seit P5 v3.7.0) oder fsdDecl.

Der Hauptzweck von text und sourceDoc liegt in der Aufnahme des transkribierten Texts. Dabei orientiert sich text an der “Inhaltslogik” des Texts und bietet Unterelemente wie front, body oder back, die gängige Textgliederungen abbilden. sourceDoc folgt der “Dokumentlogik” und bietet eine Unterteilung in Textträger (surface) und beschriebene Zonen (zone).


Grobe Gliederungsstruktur II: Textteile/Divisionen

Längere Texte weisen zumeist eine implizite oder explizite Untergliederung auf. Beispiele für solche Gliederungseinheiten sind Bände, Teile, Kapitel, Unterkapitel, Sektionen, Strophen usw.

Solche Einheiten lassen sich gut mit dem generischen Element div auszeichnen und durch ein optionales Typenattribut näher beschreiben (@type; bei Bedarf auch @subtype). Das ebenfalls optionale Attribut @n eignet sich zur Abbildung einer Kapitelnummerierung o.ä.

<TEI xmlns="http://www.tei-c.org/​ns/​1.0">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>The life and opinions of Tristram Shandy, Gentleman: TEI
          edition</title>
      </titleStmt>
      <publicationStmt>
        <publisher>Web Head Press</publisher>
        <date>2013</date>
      </publicationStmt>
      <sourceDesc>
        <p>Transcribed from the first edition, 1708</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <div type="volume" xml:id="TS01">
        <div type="chapter" xml:id="TS0101">
          <head>Chap. I</head>
          <p>I wish either my father or my mother, or indeed both of them, as they were in duty both equally bound to it, had minded what they were about when they begot me; ...</p>
          <!-- Rest des 1. Kapitels -->
      </div>
      <div type="chapter" xml:id="TS0102">
        <head>Chap. II</head>
      <p> — Then, positively, there is nothing in the question, that I can see, either good or bad. — Then let me tell you, Sir, it was a very unseasonable question at least ...</p>
          <!-- Rest des 2. Kapitels -->
        </div>
        <!-- Rest des 1. Bandes -->
      </div>
      <!-- Restliche Bände des Werks -->
    </body>
  </text>
</TEI>

Die TEI-Guidelines stellen auch die spezifischeren Elemente div1 bis div7 zur Verfügung. Diese Elemente schränken die Gliederungstiefe ein, was grundsätzlich sinnvoll ist, aber unter Umständen nicht ausreicht, um einen tiefgegliederten Text adäquat zu beschreiben. Nummerierte und unnummerierte Divisionen dürfen nicht vermischt werden.


Textstruktur

Die Bausteine der TEI zur Beschreibung von Textstrukturen sind relativ überschaubar. Zu den wichtigsten Vertretern zählen

  • head: Überschriften
  • p: Absätze/Paragraphen
  • list: Auflistungen
  • l/lg: Verszeilen / gruppierte Verszeilen
  • sp: Sprechteile in dramatischen Texten
Beispiele (nach Burnard, What Is the TEI?)
Artikel
<body xml:lang="en">
    <div type="section">
        <head>Introduction</head>
        <p>We recommend the use of TEI markup as a 
        means of representing scientific prose. It has a 
        number of practical advantages: </p>
        <list>
            <item>TEI markup is easy to add;</item>
            <item>TEI markup is widely understood;</item>
            <item>TEI markup is easy to convert to other formats.</item>
        </list>
        <p>TEI markup also has some scientific
        advantages, which we discuss in section <ptr target="#SEC3"/>.</p>
        <!-- ggf. weitere einleitende Absätze -->
    </div>
    <div type="section">
        <head>Origins of the TEI</head>
        <p>The Text Encoding Initiative was born in 1987 .... </p>
        <!-- viele weitere Absätze -->
    </div>
    <div xml:id="SEC3">
        <head>Scientific properties of TEI markup</head>
        <p>TEI markup expresses a view of the nature of text ... </p>
        <!-- viele weitere Absätze -->
    </div>
</body>
Poesie (Shakespeare-Sonnet)
<lg type="sonnet">
    <head>130</head>
        <l>My Mistres eyes are nothing like the Sunne,</l>
        <l>Currall is farre more red, then her lips red,</l>
        <l>If snow be white why then her brests are dun:</l>
        <l>If haires be wiers, black wiers grow on her head:</l>
        <l>I have seene Roses damaskt, red and white,</l>
        <l>But no such Roses see I in her cheekes,</l>
        <l>And in some perfumes is there more delight,</l>
        <l>Then in the breath that from my Mistres reekes.</l>
        <l>I loue to heare her speake, yet well I know.</l>
        <l>That Musicke hath a farre more pleasing sound:</l>
        <l>I graunt I never saw a goddesse goe,</l>
        <l>My Mistress when she walkes treads on the ground.</l>
    <lg type="couplet">
        <l>And yet by heaven I thinke my love as rare,</l>
        <l>As any she beli'd with false compare.</l>
    </lg>
</lg>
Quelle
Schauspiel (Becketts Waiting for Godot (Ende))
<div type="scene">
    <!-- ... -->
    <sp>
        <speaker>Vladimir</speaker>
        <p>Pull on your trousers.</p>
    </sp>
    <sp>
        <speaker>Estragon</speaker>
        <p>You want me to pull off my trousers?</p>
    </sp>
    <sp>
        <speaker>Vladimir</speaker>
        <p>Pull <emph>on</emph> your trousers.</p>
    </sp>
    <sp>
        <speaker>Estragon</speaker>
        <p>
            <stage>(realizing his trousers are down)</stage>.
            True
        </p>
    </sp>
    <stage>He pulls up his trousers</stage>
    <sp>
        <speaker>Vladimir</speaker>
        <p>Well? Shall we go?</p>
    </sp>
    <sp>
        <speaker>Estragon</speaker>
        <p>Yes, let's go.</p>
    </sp>
    <stage>They do not move.</stage>
</div>
Postkarte
<div type="verso">
    <div type="message">
        <p>You should try this place. You can see how 
        genteel it is</p>
        <p> Hope you enjoyed Wales, as they 
        said to Mrs Fitzherbert</p>
    <signed>Mama</signed>
    </div>
    <div type="destination">
        <ab>
            <stamp type="publicity">Silhouette of 
            vintage car and slogan <mentioned>Brighton 
            &amp; Hove all set for the seventies.</mentioned>
            </stamp>
            <stamp type="postmark">Circular mark
            specifying <mentioned>Brighton &amp;
            Hove - Sussex</mentioned> and <date 
            when="1970-10-26">26 Oct 1970</date>
            </stamp>
            <stamp type="postage"> Machin design. 4d,
           vermillion.</stamp>
        </ab>
        <address>
            <addrLine>Mr Louis Burnard</addrLine>
            <addrLine>4 Freeland Cottages,</addrLine>
            <addrLine>Stanton St John</addrLine>
            <addrLine>OXFORD</addrLine>
        </address>
    </div>
</div>
Quelle
Minimal strukturierter Text


Nutzung der generischen Elemente

  • s: s-Einheit; satzartige Einheit
  • ab: Anonymer Block
<body xml:lang="en">
 <div type="section">
    <ab>
      <s n="1">Introduction</s>
      <s n="2">We recommend the use of TEI markup 
      as a means of representing scientific
      prose.</s>
      <s n="3">It has a number of practical advantages:</s>
      <s n="4">TEI markup is easy to add;</s>
      <s n="5">TEI markup is widely understood;</s>
      <s n="6">TEI markup is easy to convert to other formats.</s>
      <s n="7">TEI markup also has some scientific
      advantages, which we discuss in
      section <ptr target="#SEC3"/>.</s>
    </ab>
 </div>
</body>
Synthetische Texte (composites)
<TEI xmlns="http://www.tei-c.org/​ns/​1.0">
  <teiHeader>
  <!--[ header of a composite text ]-->
  </teiHeader>
  <text>
    <front>
    <!--[ front matter for the composite text  ]-->
    </front>
    <group>
      <text>
        <front>
        <!--[ front matter for the first text in the composite ]-->
        </front>
        <body>
        <!--[ body  of the first text in the composite ]-->
        </body>
        <back>
        <!--[ back matter for the first text in the composite ]-->
        </back>
      </text>
      <text>
        <front>
        <!--[ front matter for the second text in the composite ]-->
        </front>
        <body>
        <!--[ body  of the second text in the composite ]-->
        </body>
        <back>
        <!--[ back matter for the second text in the composite ]-->
        </back>
      </text>
      <!--[ more texts, simple or composite  ]-->
    </group>
    <back>
    <!--[ back matter of the composite text  ]-->
    </back>
  </text>
</TEI>

Diese Struktur eigenet sich z.B. um eine bestehende Anthologie eines Herausgebers zu beschreiben, die Texte verschiedener Autoren enthält.

Handelt es sich dagegen um eine neue Sammlung bereits bestehender Texte, bietet sich teiCorpus als Container-Element an:

<teiCorpus xmlns="http://www.tei-c.org/​ns/​1.0">
  <teiHeader>
  <!--[metadata relating to the whole corpus]-->
  </teiHeader>
  <TEI>
    <teiHeader>
    <!--[metadata relating to the first text in the corpus]-->
    </teiHeader>
    <text>
    <!--[first text in the corpus]-->
    </text>
  </TEI>
  <TEI>
    <teiHeader>
    <!--[metadata relating to the second text in the corpus]-->
    </teiHeader>
    <text>
    <!--[second text in the corpus]-->
    </text>
  </TEI>
</teiCorpus>

Nützliches und Wichtiges

Milestone-Elemente

Aufgrund des XML und der TEI zugrundeliegenden hierarchischen Modells werden Texte jeweils aus einer bestimmten Perspektive betrachtet und beschrieben, etwa jener der Textlogik/Textstruktur. Die konkurrierende Perspektive der physischen Struktur/Objektstruktur/Dokumentstruktur kann in diesem Fall nur nachrangig berücksichtigt werden (der umgekehrte Fall ist ebenso möglich).

Zur Abbildung solcher sekundären (bzw. nicht-primären) Perspektiven lassen sich sogenannte Milestone-Elemente nutzen. Dabei handelt es sich um Elemente, die keinen Text oder weitere Elemente enthalten können, also selbst-schliessende Elemente. Dazu zählen pb (page beginning), lb (line beginning), cb (column beginning), gb (gathering beginning) sowie das generische milestone-Element, das mit @type/@subtype versehen werden kann und zur Auszeichnung weiterer potenziell kollidierender Hierarchien herangezogen werden kann.

<body xml:lang="en">
    <pb n="42"/>
    <p>This paragraph begins on the page numbered 42... 
    <!-- lots more text here -->
    <pb n="43"/>
    <!-- yet more text here --> ... and finishes half way down the page numbered 43.</p>
    <p>This much shorter paragraph begins and ends on page 43. </p>
</body>

Funktional vergleichbar sind die Elemente handShift und shift.

Hierarchisierung ändern


Es gibt verschiedene Ansätze wie sich eine sekundäre Hierarchie in die primäre Hierarchie umwandeln lässt.


Sprache und Schreibsystem

Informationen zu Sprache und Schreibsystem haben eine zentrale Funktion für transkribierte Texte und Markup überhaupt. XML stellt daher mit @xml:lang ein globales Attribut bereit, mit dem die Sprache bezeichnet werden, in der der (Text-)Inhalt eines Elements ausgedrückt ist (vgl. auch https://www.w3.org/TR/xml/#sec-lang-tag. Das Attribut wird üblicherweise auf einer hohen Ebene angesiedelt, da es sich tiefere Ebenen vererbt, sofern diese keine eigene Sprachzuweisung haben.

<div xml:lang="la">
    <s>Pars haec lingua Latine composita est.</s>
    <s xml:lang="en">Except that this sentence is in English.</s>
    <s>Vita brevis, ars longa.</s>
</div>

Einzelne Wörter oder Sätze in abweichender Sprache können mit dem Element foreign ausgezeichnet werden:

<div xml:lang="la">
    <s>Pars haec lingua Latine composita est.</s>
    <s xml:lang="en">Except that <foreign xml:lang="fr">sacrebleu</foreign> this
    sentence is in English.</s>
    <s>Vita brevis, ars longa.</s>
</div>

Die Referenzierung der Sprachen erfolgt durch die auch in HTML gebräuchlichen Sprachcodes, die durch die IANA verwaltet werden (vgl. http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry). Falls erforderlich, können auch eigene Sprachcodes verwendet werden. In diesem Fall sollte die Sprache als language im teiHeader beschrieben werden.


Sonderzeichen

Alle Zeichen aus dem riesigen Unicode-Inventar lassen sich in einem TEI-Encoding direkt nutzen. In älteren Quellen oder noch in Katalogisierung begriffenen Sprachen kann es aber durchaus vorkommen, dass für bestimmte Zeichen oder Varianten kein Unicode-Codepoint existiert. Für solche Fälle hält die TEI das Element g (Glyph) bereit.

Ein laufendes Forschungsvorhaben, dass diese Codier-Möglichkeit ausgiebig nutzt und dabei Komplexitätsgrenzen auslotet, ist das Bonner Maya-Wörterbuch (vgl. Diehr, Franziska et al., Inscriptions, Hieroglyphs, Linguistics… and Beyond! The Corpus of Classic Mayan as an Ontological Information Resource, TEI 2019; https://gams.uni-graz.at/o:tei2019.139 / DOI 10.5281/zenodo.3456881).


Formatierung/Darstellung (rendition)

Beim Erstellen eines TEI-Dokuments geht es in erster Linie um die Erfassung des semantischen Gehalts eines Texts und seiner Bestandteile. So wird beispielsweise ein Wort in der Regel nicht als kursiv ausgezeichnet, sondern die Kursivierung bei der (automatisierten) Erstellung der Ausgabe aus semantischen Elementen wie foreign oder emph abgeleitet.

Dennoch sollen oftmals auch die vorgefundenen gestalterischen Aspekte des Quellentexts (Schrift, Schriftgrösse, Hervorhebungen, Dekorationen usw.) in das Encoding übernommen werden. Die resultierende(n) Ausgabe(n) können solche Phänomene durchaus mehr oder weniger getreu reproduzieren, die angestrebte Präsentation sollte aber das Encoding nicht beeinflussen.

Die Attributklasse att.global.rendition stellt mit @rend, @rendition und @style drei Attribute zur Beschreibung solcher Erscheinungsformen zur Verfügung.

  • @rend zeigt an wie das enthaltende Element in der Quelle dargestellt ist. Aufgrund der vielen möglichen Phänomene und der unterschiedlichen Bedürfnisse in Editionsprojekten geben die TEI-Richtlinien keine Werteliste vor. Wie das Beispiel <head rend="align(center) case(allcaps)"> zeigt, kann das Attribut mehrere Phänomene enthalten und die Beschreibung kann ein Phänomen benennen (align) und die Ausprägung näher spezifizieren (center). Diese Zweigliedrigkeit ist aber nicht vorgegeben und es kann auch eine direktere Vorgehensweise gewählt werden (z.B. rend="bold").
  • @rendition verwendet anders als @rend einen Verweismechanismus, bei dem an der ausgezeichneten Stelle auf eine in den Metadaten zentral verwaltete Beschreibung des Phänomens verwiesen wird. Die Auszeichnung des zentrierten, durchgehend gross geschriebenen Titels kann z.B. mit <head rendition="#ac #sc"> erfolgen. Die Defintion, auf die verwiesen wird, kann auf bestehende Beschreibungs- bzw. Darstellungsmethoden wie CSS basieren: <rendition xml:id="sc" scheme="css">font-variant: small-caps</rendition>. Dieser pragmatische Ansatz läuft in gewissem Sinn dem Anspruch zuwider, die Quelle und nicht die Ausgabe zu beschreiben, ist aber akzeptiert und wird in den Richtlinien explizit empfohlen.
  • @style enthält formale Darstellungsvorgaben, die einem bestimmten Schema oder einer spezifischen Methode wie CSS folgen und befindet sich dadurch gleichermassen in Ambivalenz zwischen Quellen- und Ausgabebeschreibung.
Beispielhafte Anwendung der drei Ansätze: Schuldbuch aus dem 17. Jh.

Auszug aus The tutor to true English von Henry Care (1687), S. 70, nach Burnard, What is the TEI?, S. 39.

  • @rend

    Semantisch leichte Auszeichnung mit hi (highlighted):

    <p rend="roman">
    <lb/>And here note, for a Caution against <hi rend="italic">Extrava-<lb break="no"/>gance</hi>, and 
    for encouragement to <hi rend="italic">Frugality</hi>
    and <lb/>good Husbandry in all People, especially <hi rend="italic">Youth</hi>,
    </p>
    <p rend="gothic">
    <lb/>That <hi rend="roman">every Penny</hi> any Person spends
    <lb/>idly, would purchase a <hi rend="roman">Yard</hi> (that is three <lb/>foot)
    square, and somewhat above, of as <hi rend="roman">
    <lb/>good Land</hi> as most in England, to <hi rend="roman">him <lb/>and his Heirs
    for ever.</hi>
    </p>
  • @rendition

    Definition im teiHeader

    <rendition xml:id="it" scheme="css">font-family: roman; font-style: italic</rendition>
    <rendition xml:id="ro" scheme="css">font-family: roman; font-style: normal</rendition>
    <rendition xml:id="go" scheme="css">font-family: unifraktur cursive</rendition>

    Auszeichnung der Passage

    <p rendition="#go">That <hi rendition="#ro">every Penny</hi> any Person spends idly
    ...</p>
  • @style

    <p style="font-family: roman">And here note, for a Caution against <hi style="font-style:italic">Extravagance</hi>, and for encouragement to <hi style="font-style:italic">Frugality</hi> ...</p>

Namen / Named entities

Das visuelle Hervorheben von Personennamen, Ortsangaben oder Kalenderdaten hat eine lange Tradition in der Handschriften- und Druckkultur. In der digitalen Welt kommt diesem Vorgang zusätzliche Bedeutung zu, weil sich durch die semantische Anreicherung durch sog. named entities Texte maschinell analysieren, verknüpfen und auffinden lassen.

Mit dem Element rs (referencing string) bieten die Guidelines einen generischen Mechanismus zur Auszeichnung und internen oder externen In-Bezug-Setzung beliebiger Wörter oder Wortfolgen (auch von Deiktika). Nebst Angabe des Referenzziels lässt sich die Referenz wie schon z.B. bei div durch Attribute wie @type/@subtype näher charakterisieren.

Die Alternative zu rs ist die Verwendung typisierter name-Elemente (wiederum via @type/@subtype) oder der spezifischen Elemente persName, placeName oder orgName. Letztere ermöglichen dabei auch eine Binnenstrukturierung mit z.B. surname, foreName, region, geogName.

Je tiefer das Tagging in diesem Bereich erfolgt, desto mächtigere Indizes und Register lassen sich aus dem Encoding erstellen. Auf der anderen Seite wächst aber natürlich auch der Arbeitsaufwand in beträchtlichem Mass.

Beispiel (Manuskriptauszug)
<p>On the first of February 1792 <name>Father Job Bishop</name> and <name>Elder Edmond
   Lougee</name> came from <name>New Lebanon, N.Y.</name> to organize and establish a
 Community of Believers at <name>Canterbury, N.H.</name>
</p>

Dieses Encoding reicht aus, um alle getaggten Einheiten ohne weitere Differenzierung abzufragen oder zu extrahieren.

Ein stärker differenzierendes Encoding könnte so aussehen:

<p>On the first of February 1792 <persName>
  <roleName>Father</roleName>
  <forename>Job</forename>
  <surname>Bishop</surname>
 </persName> and <persName>
  <roleName>Elder</roleName>
  <forename>Edmond</forename>
  <surname>Lougee</surname>
 </persName> came from <placeName>
  <settlement>New
     Lebanon</settlement>
  <region>N.Y.</region>
 </placeName> to organize and establish a Community of Believers
 at <placeName>
  <settlement>Canterbury</settlement>,
 <region>N.H.</region>
 </placeName>
</p>

Der Informationsgehalt lässt sich durch die Verlinkung von externen Referenzobjekten oder Normdatenangaben wie GND-, VIAF- oder Geonames-IDs zusätzlich steigern:

... <persName
  ref="http://records.ancestry.co.uk/​Edmund_Lougee_records.ashx?pid=24762763"> Elder
 Edmond Lougee </persName> ...

Da nicht alle identifizierbaren Einheiten Teil solcher Referenzressourcen sind, ist es in den meisten Fällen sinnvoll, projektinterne Identifikatoren zu vergeben und bei Bedarf Listen zu pflegen, die mit zusätzlichen (biographischen, prosopographischen, geographischen usw.) Informationen angereichert werden können.

Verweise auf solche Identifikatoren können wiederum im @ref-Attribut aufgezeichnet werden:

<persName ref="#P1234"> Elder Edmond Lougee </persName>
<!-- .... -->
<person xml:id="P1234">
 <p>Edmund or Edmond Lougee was born in Exeter Newmarket, Rockingham, New Hampshire,
   USA on 1731 to John Lougee and Anne Gilman. He married Hannah Lord and had 7
   children. He passed away on 3 Jun 1807 in Loudon, New Hampshire, USA.</p>
</person>

Die gleiche Information könnte auch in strukturierter Form mit Elementen wie birth, death, relation usw. erfasst werden.

Denkbar ist aber auch eine einfachere Identifikationskonvention, die z.B. nur eine normalisierte Form des Namens mit Lebensdaten im @key aufzeichnet:

<persName key="Lougee, Edmond (1731-1807)"> Elder Edmond Lougee </persName>

Daten

Während wichtige Daten zu einem Text (Erstellung, Veröffentlichung) im teiHeader als Metadaten aufgezeichnet werden, ist es vielfach auch sinnvoll, Datierungen im transkribierten Text auszuzeichnen. Zur Verwendung kommen dazu die Elemente date und time mit jeweils mehreren Datierungsattributen, die u.a. auch den Umgang mit unscharfen Datierungen erleichtern. Die Normalisierung von Daten ermöglicht datumsbasierte Analysen und Abfragen (Suche, Datumsfilter) sowie chronologische Reihungen.

Bei eindeutiger Datierung liegt die Verwendung von @when mit Nutzung der vom W3C empfohlenen Zeit- und Datumsformaten nahe:

<p>On <date when="1792-02-01">the first of February 1792</date> ... </p>
<p>
 <date from="1792-02-01" to="1792-02-07">During the first week of February 1792</date>
 ... 
</p>

Perioden lassen sich mit dem Attributpaar @from/@to, Unschärfen mit @notBefore/@notAfter beschreiben, die bei Bedarf selbstredend auch gemischt werden können.

Diese fünf Attribute gibt es jeweils in zwei zusätzlichen Ausprägungen (mit Suffix -iso und -custom), was eine stärkere Standardisierung bzw. den Umgang mit exotischen Datierunssystemen ermöglicht.

Zusätzliche Flexibilität schaffen die Attribute @calendar und @period, mit denen Angaben zu verwendeten Kalendern und historischen Perioden gemacht werden können, jeweils im Verweissystem (ähnlich z.B. @rendition).


Tabellen

Das Tabellenmodell der TEI ist im Vergleich zu Textverarbeitungsprogrammen absichtlich einfach gehalten und zielt wiederum nicht auf die Ausgabe ab, sondern den semantischen Gehalt einer Tabelle.

Tabellen lassen sich aufbauen aus table-, row- und cell-Elementen, ergänzt um die Tabellenattribute role,rows und cols. Ein Äquivalent zur Spalte gibt es als Element nicht.

Tabellenbeispiel (Burnard, What Is the TEI?, S. 49)
Fruit apple banana cherry date
Nuts almond brazil coconut doughnut pistachio
<table>
 <row>
  <cell role="label">Fruit</cell>
  <cell>apple</cell>
  <cell>banana</cell>
  <cell cols="2">cherry</cell>
  <cell>date</cell>
 </row>
 <row>
  <cell role="label">Nuts</cell>
  <cell>almond</cell>
  <cell>brazil</cell>
  <cell>coconut</cell>
  <cell>doughnut</cell>
  <cell>pistachio</cell>
 </row>
</table>

Abbildungen

Abbildungen können einfache graphische Elemente im Text sein, sie können aber auch komplexere Gebilde mit Titel, Legende, Verweissystemen u.a.m. sein. Das figure-Element der TEI bietet daher ein relativ komplexes Inhaltsmodell, dessen wichtigste Unterelemente graphic und head sind.

Beispiel: John Leech: Domestic Bliss, Cartoon in Punch vol 13 (Juli 1847), S. 14 (nach Burnard, What Is the TEI?, S. 50f.
John Leech: Domestic Bliss, Cartoon in Punch vol 13 (Juli 1847)
<figure type="cartoon" place="topLeft">
 <head rend="caps">Domestic Bliss</head>
 <graphic url="vol13p14.png"/>
 <sp>
  <speaker rend="italic">Wife of your bussum</speaker>
  <p rend="smallcaps">
   <q>Oh! I don’t want to interrupt you dear. I only want some
       money for Baby’s socks — and to know whether you will have the mutton cold or
       hashed.</q>
  </p>
 </sp>
 <figDesc>A domestic interior drawn by Leech, showing a wild-haired man in a dressing
   gown sitting at a desk covered in papers, with his wife, two small children, one
   of them banging a drum, and a cat. </figDesc>
</figure>

Bibliographien

Zur Wiedergabe bibliographischer Einträge, aber auch für allgemeinere Referenzen auf Publikationen jedweder Art bietet die TEI zwei Ansätze, einen struktuierten/daten-zentrierten und einen text-zentrierten.

Der biblStruct-Ansatz strebt eine möglichst weitgehende Atomisierung an, indem für jeden Aspekt (Autor, Titel, Publikationsjahr usw.) eigene Elemente angeboten werden. Die Informationen stehen dabei für sich und sind nicht etwa durch bestimmte Interpunktion separiert. Letztere kann im Zuge der Ausgabe nach einem bestimmten Zitierstil automatisiert erzeugt werden.

Zwei wichtige Elemente zur Strukturierung von Literatureinträgen sind monogr und analytic, mit denen monographische Einheiten (wie ein Buch) bzw. analytische Einheiten (wie ein Zeitschriftenartikel) abgebildet werden können.

<biblStruct xml:id="Cameron1995">
 <monogr>
    <author>
        <surname>Cameron</surname>
        <forename>Deborah</forename>
    </author>
    <title>Verbal Hygiene</title>
    <imprint>
        <publisher>Routledge</publisher>
        <pubPlace>London</pubPlace>
        <pubPlace>New York</pubPlace>
        <date>1995</date>
    </imprint>
 </monogr>
</biblStruct>

Auch das weniger strukturierte bibl-Element kann optional Unterelemente zur Abgrenzung bestimmter Aspekte enthalten. Die Diktion des Eintrags folgt hier meist einem bestimmten Zitierstil (etwa jenem des Quelltexts). Dies ergibt weniger Flexibilität hinsichtlich des Ausgabeformats, dafür ist die Erfassung etwas weniger aufwändig.

<bibl>
    <author>Deborah Cameron</author>:
    <title level="m">Verbal Hygiene</title>.
    London, New York: Routledge.<date>1995</date>
</bibl>

Verweise auf Literatureinträge aus dem Fliesstext sind mit den Pointer-Elementen ref oder ptr möglich.

<p>Humans have <q>a healthy obsession with language</q> (<ref target="#Cameron1995">Cameron 1995</ref>). It would be surprising if we did not...</p>

Digitale Edition, Apparat, Kommentierung, Annotation

Digitalisate

Das Element facsimile, das direkt in TEI stehen kann, dient als Containerelement für die Beschreibung und Verlinkung von Digitalisaten. Als Abbildungen von Dokumenten hängen Digitalisate direkt mit der physischen Struktur des Dokuments zusammen. Zur Beschreibung dieser Struktur können in facsimile die Elemente surface (Oberfläche eines Schriftträgers) und zone verwendet werden.

Auf die so erfassten Digitalisate bzw. die sie enthaltenden Oberflächen und Zonen kann im Text mit dem globalen Attribut @facs verwiesen werden. Typischerweise geschieht das in den pb-Elementen, die Verlinkung kann aber auch kleinteiliger erfolgen.

<facsimile>
    <surface xml:id="s1">
        <graphic url="page1r.png"/>
    </surface>
    <surface xml:id="s2">
        <graphic url="page1v.png"/>
    </surface>
</facsimile>
<text>
    <body>
        <pb facs="#s1"/>
        <!-- text transcribed from page 1 recto here -->
        <pb facs="#s2"/> <!-- text transcribed from page 1 verso here -->
    </body>
</text>

Transkription
Normalisierung, Emendation

Editoren versuchen Texte und die darin vorkommenden Phänomene grundsätzlich möglichst objektiv und quellennah wiederzugeben, sie nehmen aber auch editorische Eingriffe vor (z.B. Normalisierung von Schreibungen oder Emendationen). Die TEI stellt ein Inventar bereit, mit dem solche Eingriffe transparent gemacht werden können. Ebenso lassen sich Korrekturen oder Änderungen durch Schreiber oder abweichende Varianten in Handschriften beschreiben. Auf dieser Grundlage muss nicht wie im Druck ein einzelner Editionstext erstellt werden, der alle relevanten vorgefundenen Phänomene zusammenführt, sondern es können relativ leicht Textvarianten erzeugt und einander gegenübergestellt werden.

Wichtige Transkriptions-Elemente:

  • corr: Ausweisung korrigierter Stellen
  • reg: Ausweisung normalisierter Stellen
  • sic: Ausweisung belassener, eigentlich korrekturwürdiger Stellen
  • orig: Kennzeichnung der originalen Schreibweise in der Quelle

Diese Elemente kommen oft gemeinsam vor, indem sie in einem choice-Element als Alternativen offeriert werden.

<l>My
    <choice>
        <reg>Mistress'</reg>
        <orig>Mistres</orig>
    </choice> eyes are nothing like the
    <choice>
        <reg>sun</reg>
        <orig>Sunne</orig>
    </choice>,
</l>
<l>
    <choice>
        <reg>Coral</reg>
        <orig>Curral</orig>
    </choice> is far more red
    <choice>
        <reg>than</reg>
        <orig>then</orig>
    </choice> her lips red,
</l>

Variantenapparat

Wo verschiedene Fassungen eines Texts Varianten aufweisen, wäre choice keine ideale Lösung. Stattdessen können die Elemente app (Apparatus) und rdg (reading) genutzt werden, um Varianten nebeneinander zu stellen. Eine durch den Editor als primäre Lesung festgelegte Variante kann mit lem ausgezeichnet werden (Lemma).

Der Bezug zu Textzeugen lässt sich mit dem Attribut @wit (witness) herstellen. Die verlinkten Siglen verweisen dabei auf eine Auflistung der Manuskripte im Metadatenteil.

<l n="1">
<app>
    <rdg wit="#El #Hg">Experience</rdg>
    <rdg wit="#La">Experiment</rdg>
    <rdg wit="#Ra2">Eryment</rdg>
</app> though noon Auctoritee...
</l>

Schreibprozess und Textgenese

Vor allem in den neuen Philologien erfährt die Prozesshaftigkeit des Schreibens in den letzten Jahrzehnten einige Aufmerksamkeit. Phänomene wie Ergänzungen, Streichungen oder Korrekturen finden sich aber auch in älteren Manuskripten und sind auch dort von grosser editorischer Relevanz.

Die TEI stellt zur Auszeichnung solcher Phänomene die Elemente add, del und subst zur Verfügung, die mit Attributen wie @resp (Verantwortet durch) und @place (Lokalisierung relativ zur betroffenen Textstelle) weiter präzisiert werden können.

Detail aus Wilfred Owen, Dulce et decorum est, English Faculty Library, Oxford University
<l>And towards our distant rest began to trudge,</l>
<l>
    <subst>
    <del>Helping the worst amongst us</del>   
    <add>Dragging the worst amongt us</add>
    </subst>, who’d no boots
</l>
<l>But limped on, blood-shod. All went lame;
    <subst>
    <del status="shortEnd">half-</del>
    <add>all</add>
    </subst> blind;
</l>
<l>Drunk with fatigue ; deaf even to the hoots</l>
<l>Of tired, outstripped
    <del>fif</del> five-nines that dropped behind.
</l>

Editorische Ergänzungen können mit supplied markiert werden, wiederum unter Angabe der Verantwortlichkeit mit @resp:

<add>Dragging the worst among<supplied resp="#ED">s</supplied>t us
</add>

Sprechakte

TODO Vgl. https://books.openedition.org/oep/1340#tocfrom1n2


Wörterbücher

Während die TEI zumeist eine breite Herangehensweise verfolgt, die auf die verschiedensten Dokumenttypen anwendbar sind, gibt es für das Encoding von Wörterbüchern und Lexika auch spezifische Elemente. Die Ursache mag in strukturellen Eigenheiten liegen – Wörterbücher bestehen nicht aus Fliesstext, sondern aus diskreten Einheiten in einer bestimmten Reihenfolge und Darstellung (Lemma, linguistische Information, semantische Definition, Verweise) –, sie könnte aber auch damit zusammenhängen, dass das Digitalisierungspotenzial für diesen Typus früh erkannt und zu realisieren versucht wurde.

‘Apple’, Johnson’s Dictionary of the English Language (1755), nach Burnard, What Is the TEI?, S. 66f.

Ein minimales Encoding dieses Eintrags unterscheidet das Lemma und seine Schreibweise und grammatische Zuordnung, die Etymologie und zwei Bedeutungen in strukturierter Form:

<entry>
  <form type="lemma">
    <orth rend="ALLCAPS">A’PPLE</orth>. <gramGrp>
    <pos norm="noun">n.s.</pos> </gramGrp>
  </form>
  <etym>[<foreign xml:lang="ang">æppel</foreign>, <lang>Saxon</lang>.] </etym>
  <sense n="1">
    <def>The fruit of the apple tree.</def>
    <cit>
      <quote type="verse">
        <l>Tall thriving trees confess’d the fruitful mold;</l>
        <l>The red’ning <hi>apple</hi> ripens here to gold.</l>
      </quote>
      <bibl>Pope’s <title>Odyssey</title>.</bibl>
    </cit>
  </sense>
  <sense n="2"> <def>The pupil of the eye.</def> <cit> <quote> He instructed him; he kept him as the apple of his eye.</quote> <bibl>Deut. xxxii. 10.</bibl>   </cit>
  </sense>
</entry>

Die Strukturierung begünstigt die Erstellung eines neuen Wörterbuchs ebenso wie die Durchsuchbarkeit der digitalen Repräsentation des bestehenden.


Anmerkungen und Kommentare

Kommentierung spielt eine wichtige Rolle, sowohl in (v.a. älteren) Quellentexten als auch in späteren Kommentierungen oder Editionen dieser Texte. Auch für akademische Texte sind Anmerkungen charakteristisch, seien es Fuss- oder Endnoten, Marginalien, Glossen, bibliographische Referenzen oder anderes mehr. In TEI lassen sich all diese Anmerkungstypen mit dem note-Element auszeichnen, das in sehr vielen Kontexten verwendet werden kann. Wie üblich ist eine Typisierung und nähere Verortung und Annotierung (z.B. zur Urheberschaft des Kommentars) über Attribute möglich.

Beispiele zu note (nach Burnard, What Is the TEI?, S. 68f.)
Auszug aus Deborah Camerons Verbal Hygiene (S. 229)
Auszug aus Deborah Camerons Verbal Hygiene (S. 247)

Wiedergabe der Anmerkung am point of attachment (inline):

<div>
    <head>Beyond "anything goes"</head>
    <p> Why does the language-maven in the street 
    (or the senior common-room, or the bar at the Groucho
    Club <note>An establishment patronized by media folk
    in London (provided the club will have them as
    members).</note>) have such a low opinion of 
    linguists? Because...
    </p>
</div>

Alternativ kann im Text ein Verweis auf die an anderer Stelle codierte Anmerkung eingefügt werden:

<div>
    <head>Beyond "anything goes"</head>
    <p> Why does the language-maven in the street
    (or the senior common-room, or the bar at the Groucho
    Club<ptr target="#note6"/>) have such a low opinion of
    linguists? Because...</p>
</div>
<back>
    <head>Notes</head>
    <!-- other notes here -->
    <note xml:id="note6">An establishment patronized
    by media folk in London (provided the club will have 
    them as members).
    </note> <!-- and here -->
</back>

Beide Ansätze ermöglichen eine flexible Umsetzung, etwa als Tooltip zum Lemma Groucho Club oder als Fuss- oder Endnote mit einem numerischen Verweis (und automatisch erzeugten Rückverweis zur annotierten Stelle).

Wenn gewünscht lässt sich dieser Verweis auch explizit in das Encoding aufnehmen:

...the Groucho Club
           <ref target="#note6">6</ref>) have .

Linguistische Annotation

Da die Datenformate für linguistische Analysen stark variieren, bietet die TEI in diesem Bereich kein semantisches Vokabular auf einer höheren Ebene an (i.S.v. noun oder metaphor), ermöglicht aber die Auszeichnung kleinteiliger Einheiten, die nach Projektbedarf weiter ausgezeichnet werden können. Insbesondere gibt es eine einfache Methode, einen Fliesstext in wortartige Einheiten zu unterteilen und diese Segmente mit linguistischen Codes zu versehen.

<u who="PS6NY">  
  <s n="12">
    <w ana="#VM0" lemma="lets">Lets</w>
    <w ana="#VVI" lemma="ask">ask </w>
    <w ana="#DPS" lemma="you">your </w>
    <w ana="#NN1" lemma="mum">Mum </w>
    <w ana="#CJS" lemma="if">if </w>
    <w ana="#EX0" lemma="there">there</w>
    <w ana="#VBZ" lemma="be">'s</w>
    <w ana="#DT0" lemma="any">any </w>
    <w ana="#NN2" lemma="corner">corners </w>
    <w ana="#PRP" lemma="on">on </w>
    <w ana="#AT0" lemma="a">a </w>
    <w ana="#NN1" lemma="boat">boat</w> <pc>. </pc>
  </s> 
</u>

In diesem Beispiel wird jedes lexikalische Item mit einem w-Element ausgezeichnet und mit zwei Attributen versehen, die auf eine Part-of-Speech-Definition verweisen (@ana) bzw. eine Grundform festlegen (@ana). Encodings dieser Art werden zumindest teil-automatisiert erzeugt.

Zur besseren (menschlichen) Nachvollziehbarkeit können die referenzierten Kategorien im teiHeader in taxonomy-Elementen näher beschrieben werden.

Mit den feature structures (vgl. Kapitel 18 der TEI-Guidelines) bietet die TEI daneben einen alternativen Mechanismus, der sich für das Encoding linguistischer Termini sehr gut eignet (und jüngst auch für das Encoding von Variantenapparaten vorgeschlagen wurde, vgl. Helena Bermúdez Sabel, Encoding of Variant Taxonomies in TEI, jTEI Issue 11 2020, 🔗 DOI 10.4000/jtei.2676).


Metadaten: teiHeader

Zur Aufzeichnung wichtiger Metadaten zum Text und dessen Encoding verfügt jedes TEI-Dokument über ein teiHeader-Element.

Der teiHeader umfasst vier Hauptkomponenten, die der International Bibliographic Standard Description, einem der ersten Standards zur umfassenden bibliographischen Beschreibung entsprechen:

  • fileDesc: vollständige bibliographische Beschreibung einer digitalen Datei
  • encodingDesc: beschreibt Beziehung zwischen einem elektronischen Text und der zugrundeliegenden Quele
  • profileDesc: detailierte Beschreibung nicht-bibliographischer Aspekte eines Texts, insb. der verwendeten Sprachen, der Produktionssituation, der Teilnehmer und ihres Kontexts
  • revisionDesc: widerspiegelt die Bearbeitungsgeschichte der Datei
fileDesc

Das fileDesc-Element ist das einzige Element, das obligatorisch im teiHeader vorkommen muss. Es enthält seinerseits drei obligatorische Bestandteile: titleStmt, publicationStmt und sourceDesc.

Ein möglicher minimaler TEI Header sieht so aus:

<teiHeader>
  <fileDesc>
    <titleStmt>
      <title>Title of the work</title>
    </titleStmt>
    <publicationStmt>
      <p>Information about the publication of the work</p>
    </publicationStmt>
    <sourceDesc>
      <p>Information about the source from which the work was derived</p>
    </sourceDesc>
  </fileDesc>
</teiHeader>

Weitere mögliche Elemente in fileDesc sind editionStmt (Aussagen zur Edition der beschriebenen Ressource), seriesStmt (ggf. Angaben zur Serie, zu der der Text gehört), extent (Angaben zum Umfang) und notesStmt (https://tei-c.org/release/doc/tei-p5-doc/en/html/ref-notesStmt.html) (Sammlung weiterer Anmerkungen zum Text).

Beispiel titleStmt
<titleStmt>
  <title xml:lang="sk">Yogadarśanam (arthāt yogasūtrapūphah).</title>
  <title>The Yoga sūtras of Patañjali: a digital edition.</title>
  <author>Patañjali</author>
  <funder>Wellcome Institute for the History of Medicine</funder>
  <principal>Dominik Wujastyk</principal>
  <respStmt>
    <name>Wieslaw Mical</name>
    <resp>data entry and proof correction</resp>
  </respStmt>
  <respStmt>
    <name>Jan Hajic</name>
    <resp>conversion to TEI-conformant markup</resp>
  </respStmt>
</titleStmt>
Beispiel publicationStmt
<publicationStmt>
  <publisher>Humanities Media and Computing center</publisher>
  <pubPlace>University of Victoria</pubPlace>
  <date when="2011-08-04">19 August 2011</date>
  <idno type="filename">maladies_des_femmes.xml</idno>
  <availability status="free">
    <p>Copyright 2011. This text is freely available provided the text is distributed
       with the header information provided.</p>
    <p xml:lang="fr">Les droits de reproduction des gravures ont été achetés de la
      Bibliothèque Nationale de France grâce à une subvention accordée par le <ref target="http://www.sshrc-crsh.gc.ca/">Conseil de recherches en sciences humaines
      du Canada</ref>. Les autres éléments du projet (les contributions des éditeurs,
      les transcriptions des textes, l’encodage et le code) sont distribués sous les
      termes de cette licence: <ref
      target="http://creativecommons.org/​licenses/​by-nc-nd/​2.5/​ca/​deed.fr_CA">Creative
      Commons Paternité - Pas d’Utilisation Commerciale - Pas de Modification 2.5
      Canada</ref>.
    </p>
  </availability>
</publicationStmt>


Das sourceDesc-Element dient dazu, die Quelle, die dem TEI-Dokument zugrunde liegt, formal bibliographisch zu dokumentieren.

Beispiele sourceDesc


Genuin digitales Dokument, einfaches bibl:

<sourceDesc>
 <bibl>
  <title>Manifeste des Digital humanities</title>. <author>Marin Dacos et al.</author>
   Available from <ref target="http://tcp.hypotheses.org/318">http://tcp.hypotheses.org/​318</​ref>
  <date when="2010-05-21"/>
 </bibl>
</sourceDesc>

Kurzer erklärender Paragraph:

<sourceDesc>
 <p>No source: this is a born digital document.</p>
</sourceDesc>

Spezifische Druckedition als Grundlage:

<sourceDesc>
 <bibl xml:id="Sue1846">
  <author>
   <surname>Sue</surname>, <forename>Eugène</forename>
  </author>
  <title level="m">Martin, l’enfant trouvé : Mémoires d’un valet de chambre</title>
  <imprint>
   <publisher>C. Muquardt</publisher>
   <pubPlace>Bruxelles</pubPlace>
   <pubPlace>Leipzig</pubPlace>
   <date when="1846">MDCCCXLVI</date>
  </imprint>
 </bibl>
</sourceDesc>

Audio-/Videoaufnahmen

<sourceDesc>
 <recordingStmt>
  <recording type="audio" dur="P30M">
   <respStmt>
    <resp>Location recording by</resp>
    <name>Sound Services Ltd.</name>
   </respStmt>
   <equipment>
    <p>Multiple close microphones mixed down to stereo Digital Audio Tape, standard
         play, 44.1 KHz sampling frequency</p>
   </equipment>
   <date>12 Jan 1987</date>
  </recording>
 </recordingStmt>
</sourceDesc>

Postkarte:

<sourceDesc>
 <bibl>
  <title level="m">The Bathing Beach, Brighton, in 1845 [postcard]</title>
  <respStmt>
   <resp>Lithograph by</resp>
   <name>G. F. Bragg</name>
  </respStmt>
  <respStmt>
   <resp>after a drawing by</resp>
   <name>R. H. Nibbs</name>
  </respStmt>
  <publisher>K. J. Bredon’s Bookshop</publisher>
  <pubPlace>10 East Street, Brighton</pubPlace>
 </bibl>
</sourceDesc>

Manuskriptbeschreibung mit msDesc:

<sourceDesc>
 <msDesc>
  <msIdentifier>
   <country>France</country>
   <settlement>Paris</settlement>
   <repository>Archives nationales</repository>
   <collection>Commerce et Industrie</collection>
   <idno>F/12/5080</idno>
  </msIdentifier>
  <msContents>
   <p>Minute d’un rapport de proposition à la Légion d’honneur fait, en 1850, par le
       ministre du Commerce et de l’Agriculture et président de la Société de
       géographie, Jean-Baptiste Dumas, au Président de la République, en faveur des
       frères d’Abbadie, Antoine (1810-1897) et Arnaud (1815-1893), auteurs d’un voyage
       en Abyssinie.</p>
  </msContents>
  <physDesc>
   <p>Deux feuilles de papier 24 x 12 cm ; écriture à l’encre noire.</p>
   <handDesc>
    <handNote xml:id="AA" scope="major">Antoine d’Abbadie</handNote>
    <handNote xml:id="DJB" scope="minor">Jean-Baptiste Dumas</handNote>
    <handNote xml:id="EPR" scope="minor">membre inconnu du cabinet du
         ministre</handNote>
   </handDesc>
  </physDesc>
 </msDesc>
</sourceDesc>
encodingDesc

Im Element encodingDesc können die allermeisten Informationen zum Codierprozess erfasst werden, entweder als Fliesstext oder strukturiert in spezifischen Unterelementen. Die Information in encodingDesc hat oft den Charakter einer technischen Dokumentation.

Je nach Element richtet sich die Information an menschliche Leser (z.B. projectDesc, samplingDecl oder editorialDecl) oder ist zur maschinellen Auswertung und Verarbeitung vorgesehen (z.B. charDecl, classDecl, refsDecl, geoDecl, metDecl, fsdDecl oder variantEncoding).

Beispiele encodingDesc
<encodingDesc>
 <projectDesc>
  <p>Texts collected for use in the Claremont Shakespeare Clinic, June 1990.</p>
 </projectDesc>
 <samplingDecl>
  <p>Each text contains a sample of up to 2000 words, running from the start of the
     document to the end of the sentence after the 2000 word mark. For the purposes of
     word counting, hyphens and apostrophes were treated as spaces. </p>
 </samplingDecl>
 <editorialDecl>
  <normalization>
   <p>Word forms broken by end of line hyphenation have been reconstructed without
       comment. The hyphen has been removed except for hyphenated forms attested
       elsewhere in the text. </p>
  </normalization>
  <quotation marks="all" form="std">
   <p>All quotation marks have been removed. Direct speech is represented by the use
       of the <gi>said</gi> tag; other quoted material is represented by means of the
   <gi>q</gi> tag. </p>
  </quotation>
 </editorialDecl>
</encodingDesc>

charDecl: Variante eines Zeichens, das in der Transkription gesondert erfasst wird

<charDecl>
 <glyph xml:id="z103">
  <glyphName>LATIN LETTER Z WITH TWO STROKES</glyphName>
  <mapping type="standardized">z</mapping>
  <mapping type="PUA">U+E304</mapping>
 </glyph>
</charDecl>
<p> ... mulct<g ref="#z103"/> ... </p>

classDecl: private Klassifikationssysteme

<classDecl>
 <taxonomy xml:id="size">
  <category xml:id="large">
   <catDesc>story occupies more than half a page</catDesc>
  </category>
  <category xml:id="medium">
   <catDesc>story occupies between quarter and a half page</catDesc>
  </category>
  <category xml:id="small">
   <catDesc>story occupies less than a quarter page</catDesc>
  </category>
<!-- etc -->
 </taxonomy>
 <taxonomy xml:id="topic">
  <category xml:id="politics-domestic">
   <catDesc>Refers to domestic political events</catDesc>
  </category>
  <category xml:id="politics-foreign">
   <catDesc>Refers to foreign political events</catDesc>
  </category>
  <category xml:id="social-women">
   <catDesc>refers to role of women in society</catDesc>
  </category>
  <category xml:id="social-servants">
   <catDesc>refers to role of servants in society</catDesc>
  </category>
<!-- etc -->
 </taxonomy>
</classDecl>
<catRef target="#small #social-women"/>

tagsDecl: Auflistung verwendeter Elemente und Verknüfung mit Rendering-Informationen

<tagsDecl>
 <rendition xml:id="IT" scheme="css">font-style: italic</rendition>
 <rendition xml:id="FontRoman" scheme="css">font-family: serif</rendition>
 <namespace name="http://www.tei-c.org/​ns/​1.0">
  <tagUsage gi="emph" render="#IT"/>
  <tagUsage gi="hi" render="#IT"/>
  <tagUsage gi="text" render="#FontRoman"/>
 </namespace>
</tagsDecl>
profileDesc

Das Element profileDesc kann eine detailierte Beschreibung nicht-bibliographischer Eigenschaften eines Texts aufnehmen, insb. Informationen zu verwendeten Sprachen und Schriftsystemen (langUsage), zum Entstehungskontext (creation) sowie den an der Entstehung Beteiligten (particDesc, settingDesc).

Beispiel profileDesc
<profileDesc>
 <creation>
  <date when="1962"/>
 </creation>
 <textClass>
  <catRef
    target="#WRI #ALLTIM1 #ALLAVA2 #ALLTYP3 #WRIDOM5 #WRILEV2 #WRIMED1 #WRIPP5 
 #WRISAM3 #WRISTA2 #WRITAS0"/>
  <classCode scheme="DLEE">W nonAc: humanities arts</classCode>
  <keywords scheme="COPAC">
   <term>History, Modern - 19th century</term>
   <term>Capitalism - History - 19th century</term>
   <term>World, 1848-1875</term>
  </keywords>
 </textClass>
</profileDesc>
revisionDesc

Zur besseren Nachvollziehbarkeit der Entstehung des Texts und seines Encodings können ausgeführte Arbeitsschritte im Element revisionDesc in Form von change-Elementen aufgeführt werden, die auch Angaben zum Zeitpunkt und zu Bearbeitern aufnehmen.

<revisionDesc>
 <listChange>
  <change when="2013-05-11">First complete draft</change>
  <change when="2013-04-07">Created header and document structure</change>
 </listChange>
</revisionDesc>

Aufbau und Anpassung der TEI-Guidelines

Die TEI-Richtlinien verkörpern ein sehr grosses (!) Datenmodell und sie enthalten zugleich eine Methode, dieses Modell zu modifizieren und in reduktiver, expansiver oder gemischter Vorgehensweise ein eigenes Datenmodell zu kreieren, das ideal zum bearbeiteten Gegenstand passt.

Ein schlankeres Modell führt in aller Regel zu konsistenteren Daten. Dennoch können punktuell auch Erweiterungen sinnvoll sein.

Das Inventar der TEI (Elemente, Attribute) ist in rund 20 Module gegliedert, die als Ganzes in das Modell einbezogen oder davon ausgeschlossen werden können. Das selbe gilt für die rund 80 Attributklassen. Es besteht aber auch die Möglichkeit, einzelne Elemente oder Attribute ein- oder auszuschliessen.

Die Spezifikation des Modells basiert auf dem ODD-Ansatz (One document does it all). Eine ODD-Datei ist eine technisch-orientierte TEI-Datei, in der Module, Klassen, Schema-Constraints und Weiteres definiert werden können. Aus dieser Datei lassen sich dann neben einer Dokumentation auch die Schema-Dateien erzeugen, gegen die die XML-Dokumente (als Instanzen) validiert werden können. Der oXygen-Editor bezieht aus den Schema-Dateien auch die Informationen, die für die Autovervollständigungsvorschläge herangezogen werden.

Der ODD-Ansatz besteht schon länger, in den letzten Jahren wurde ihm aber vermehrte und breitere Aufmerksamkeit zuteil. Mit dem TEI Publisher gibt es nun ein Tool, das basierend auf Vorgaben in der ODD-Datei ohne vertiefte Programmierkenntnisse die TEI-Dokumente in einer Webanwendung darstellen kann. Die davon betroffenen (gestalterischen) Aspekte der ODD-Datei lassen sich im TEI Publisher in einer graphischen Oberfläche bearbeiten.

Zum Bearbeiten des Datenmodells bzw. der ODD-Datei gibt es verschiedene Ansätze:

  • Wie jede XML-Datei kann man sie direkt in einem Texteditor bearbeiten. Der oXygen XML Editor bietet dabei die gewohnte Unterstützung (Autovervollständigung, Strukturansichten, Validierung usw.).
  • Seit vielen Jahren stellt die TEI mit Roma ein webbasiertes Werkzeug bereit, mit dem sich ODD-Dateien visuell bearbeiten lassen und gewünschte Module, Klassen und Elemente/Attribute selektiert oder deselektiert werden können. Gegenwärtig ist eine neue Version als moderne Webanwendung in Entwicklung:
  • Zusätzlich besteht auch die Möglichkeit, eine ODD-Datei aus einer oder mehreren TEI-Dateien abzuleiten (ODD by example). Dieser Ansatz kann eine sinnvolle Vorstufe sein, die sich dann mit anderen Mitteln weiter verfeinern lässt. Vgl. dazu http://teic.github.io/PDF/howtoGenerate.pdf.

Vgl. zum Thema der Anpassung der Guidelines auch L. Burnard, What Is the TEI?, S. 89-99 (https://books.openedition.org/oep/692).


Die TEI: Informationsarchitektur, Denkweise, Organisation

  • Reflektierte Digialisierung von Texten und anderen kulturellen Ressourcen
  • Informationsarchitektur, der diese Reflexion zugrunde liegt und die grossen praktischen Nutzen bietet
  • Wesentliche Komponente der DH, aber nicht allseits gleichermassen geschätzt
  • Nichtkommerzielle Mitgliederorganisation mit relativ bescheidener Förderung und viel freiwilligem Einsatz

TEI Crashkurs + Workshop, 27.09.2021
Inhalt

Teil 2: Workshop

Ziele und Vorgehen

  • Erste praktische Schritte mit TEI
  • Abwägen nützlicher Auszeichnung in Abhängigkeit möglicher Forschungsfragen
  • Text-Bild-Verknüpfung in oXygen ausprobieren
  • Validierung gegen das allgemeine TEI-Schema
  • Generierung und Bearbeitung eines eigenen Schemas
  • Einfaches Rendering im Browser (mit CSS; ohne Transformation)

Eine TEI-Datei erstellen

  • Auswahl eines einfachen, aber nicht uninteressanten Dokuments

  • TEI-Dokument in oXygen XML Editor anlegen

    • oXygen enthält ein TEI-Framework, das viele Instrumente umfasst, die für die Arbeit mit TEI-Encodings nützlich sind (Dokumentvorlagen, Schemata, Transformationen). Die verschiedenen Templates unterscheiden sich hauptsächlich im jeweils eingebundenen Schema. Dabei gibt es sehr reduzierte Vorlagen (z.B. tei_minimal), Vorlagen mit bestimmtem Einsatzzweck (z.B. für das Verfassen eines jTEI-Artikels oder die Maximalvariante tei_all. Während letztere für Encodingprojekte nicht ideal ist, eignet sie sich gut für das Kennenlernen der Möglichkeiten, welche die TEI bietet.
  • Als Vorarbeit für den nächsten Schritt kann zwischen teiHeader und text oder nach text die folgende Struktur eingefügt werden:

    <facsimile>
      <graphic url=""/>
    </facsimile>
    • Im URL-Attribut kann nun ein Verweis auf ein Bild eingetragen werden, entweder als absoluter oder (vorzugsweise) relativer Systempfad oder in Form einer URL.

      • Bei der Verwendung einer URL ist darauf zu achten, dass alle &-Symbole wie sie typischerweise bei der Verkettung von Query-Parametern vorkommen in die Referenzschreibung &amp; geändert werden (Hintergrund: das Zeichen & signalisiert dem XML-Prozessor, dass eine Character-Referenz folgt; ein alleinstehendes & kann nicht sinnvoll interpretiert werden).
      • Damit Bilder direkt von der Europeana-API geladen werden können, muss ggf. ein &amp;disposition=inline an die Bild-URL angehängt werden.

Text-Bild-Verknüpfung in oXygen

Variante 1

oXygen bietet ein TEI-Facsimile-Plugin an, das nicht Teil des Programms ist, aber leicht nachträglich installiert werden kann.

Installation
  • Menü “Help”
  • Untermenü “Install New add-ons…”
    • Die URL https://github.com/oxygenxml/TEI-Facsimile-Plugin/raw/master/addon/image-markup-plugin.xml eintragen und mit Enter bestätigen.
    • Checkbox anwählen und “Next”
    • EULA akzeptieren und “Install” (ggf. invalide Signatur ignorieren)
    • Anwendung neu starten
Testen

Das Plugin enthält eine Beispieldatei, die über die Schaltfläche “Image Markup Sample” in der Werkzeugleiste geladen werden kann.

Es handelt sich um Abbildung 11.2 aus den TEI-Richtlinien:

Detail of p 49r from Bovelles Géometrie Pratique

Im Bild können nun per Cursor Zonen markiert und dann über das Kontextmenü (Rechtsklick) bearbeitet bzw. in das Encoding übernommen werden (einfügen mit CTRL + V).

Eigene Bilder laden
  • Die Image-Markup-Ansicht öffnen über “Window” > “Show view” > “Image-Markup”.
  • Die TEI-Datei mit dem verlinkten Bild (in graphic/@url) öffnen.
  • Den Wert des @url-Attributs markieren (per Doppelklick) und dann in der Image-Markup-Ansicht “Open” anwählen.

Das Image-Markup-Plugin kann auch als Transkriptionshilfe verwendet werden (sofern es die Auflösung des Digitalisats erlaubt).

NB: Das Image-Markup-Plugin sollte für eine Synchronisierung von TEI-Dokument und Bildansicht sorgen, so dass im Encoding und in der Bildansicht immer die gleichen Zonen angezeigt werden. Das scheint allerdings nicht (mehr) wie gewünscht zu funktionieren.

Variante 2

Seit Version 18 enthält oXygen einen Image Map Editor, der die Zonierung unterstützt.

Er kann über eine Schaltfläche im Author-Modus gestartet werden und hat einen grösseren Funktionsumfang als das Image-Markup-Plugin.

Vgl. die Dokumentation unter https://www.oxygenxml.com/doc/versions/23.1/ug-editor/topics/image-map-tei.html

Validierung

Eingebundenes Schema

Rendering mit CSS

Aus TEI-Dateien lassen sich durch Transformationen sehr flexible HTML-Outputs erstellen. Christian Forney geht im Workshop am 15.11.2021 möglicherweise näher auf diese Methode ein.

Für diesen Workshop wählen wir einen etwas einfacheren und viel weniger flexiblen Ansatz: die direkte Präsentation der XML-Datei durch den Browser, aufgehübscht durch einige CSS-Anweisungen.

Vorgehensweise

  • Die Datei https://gist.githubusercontent.com/pdaengeli/089e6d45233fe5022db4ecf1355ebe0e/raw/2206a10b67272a31e23f3e8a053bce14b6bc64bb/crashkurs.css herunterladen und in das Verzeichnis speichern, in dem die TEI-Datei liegt.
  • In der TEI-Datei nach der letzten <?xml-model ?>-Deklaration die folgende Zeile einfügen: <?xml-stylesheet type="text/css" href="crashkurs.css"?>
  • Die TEI-Datei im Browser öffnen; sie sollte nun ganz rudimentär gerendert werden.
  • CSS-Datei nach eigenen Bedürfnissen anpassen und verbessern.

oXygen-Tipps

  • oXygen schlägt im jeweiligen Kontext Elemente und Attribute vor, soweit diese in den eingebundenen Schemata erlaubt sind.
Tastenkombination Aktion
CTRL + E Markierte Stelle mit einem Tag umschliessen; im gegebenen Kontext erlaubte Möglichkeiten offeriert
CTRL + SHIFT + V Datei validieren
CTRL + SHIFT + W Wohlgeformtheit prüfen
CTRL + I Auswahl indentieren
CTRL + SHIFT + I Element formatieren und indentieren
CTRL + SHIFT + G Zum zugehörigen Tag springen
CTRL + SHIFT + , Kommentar ein-/ausschalten
CTRL + SHIFT + T aktives Transformationsszentario ausführen
CTRL + SHIFT + C Transformationsszenarien konfigurieren
ALT + SHIFT + F Einfache Suche in der aktiven Datei
CTRL + F Suchen und Ersetzen-Dialog
CTRL + SHIFT + H Suchen und Ersetzen in mehreren Dateien
F2 (bei Cursor auf Tag) Öffnet einen Tooltip mit einem Auszug aus den Guidelines und einem Link zur Defintion des Elements
ALT + Pfeilnavigation Markierte Zeilen nach oben/unten bewegen
ALT + O, ALT + P Einstellungen öffnen