Changes between Initial Version and Version 1 of echo-schema/usage-guide


Ignore:
Timestamp:
Jul 19, 2011, 2:59:52 PM (13 years ago)
Author:
Wolfgang Schmidle
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • echo-schema/usage-guide

    v1 v1  
     1[[PageOutline(1-4,,pullout)]]
     2
     3[wiki:echo-schema ECHO-Schema], [wiki:echo-schema/overview 1. Überblick], [wiki:echo-schema/usage-guide 2. Usage Guide], [wiki:echo-schema/implementation 3. Umsetzung]
     4
     5== 2. Usage Guide
     6
     7Eine erste Version des Usage Guide für das Schema: [source:trunk/papers/documentation/usage_guide.pdf PDF]
     8(Stand April 2010; TO DO: aus LaTeX in das Wiki übertragen, aktualisieren)
     9
     10=== General
     11
     12Design decisions:
     13  *  one schema for all texts
     14  * modules should be independent
     15  * tags in the DESpecs should have some counterpart in the Schema, if possible
     16  * however, do not mimic the DESpecs structure
     17
     18Standard suffixes as in xhtml:
     19  * .attrib (defined in echo-attribute)
     20  * .datatype (defined in echo-datatype)
     21  * .model (defined in echo-content)
     22  * .class (defined in several modules)
     23
     24IDs are expected, but XML texts should also validate without IDs
     25
     26=== Informationsquellen und minimales Schema
     27
     28Der Kern des Schemas:
     29"(--)" bedeutet: nicht minimal, aber man bekommt etwas dafür, was über die optische Anzeige des Textes hinausgeht
     30 
     31|| Ebene || minimal || China || Modul || Element  ||
     32|| || || || || ||
     33|| Grobstruktur || + || -- || echo-start || <echo>  ||
     34|| || + || -- || echo-metadata || <metadata>  ||
     35|| || +/-- || -- || echo-metadata || Metadaten  ||
     36|| || + || -- || echo-div || <text> ||
     37|| || || || || ||
     38|| Mittelstruktur || (--) || + || echo-div || <div index>, <div toc>  ||
     39||  || (--) || -- || echo-div || <div chapter> etc. ||
     40|| || || || || ||
     41|| Feinstruktur || + || + || echo-block || <head>, <p>, <note>  ||
     42|| || + || -- || echo-block || <s>  ||
     43|| || -- || + || echo-block-scholarly || <quote>  ||
     44|| || -- || -- || echo-block-scholarly || <set-off> ||
     45|| || || || || ||
     46|| Text || -- || + || echo-content || <emph>  ||
     47|| || (--) || -- || echo-content || <reg> ||
     48|| || (--) || -- || echo-content-scholarly || <foreign>, <ref> ||
     49|| || -- || -- || echo-content-scholarly || <sic>, <set-off>, <q> ||
     50|| || || || || ||
     51|| Hilfsmodule || + || n/a || echo-attribute || --  ||
     52||  || + || n/a || echo-datatype || -- ||
     53|| || || || || ||
     54|| F: Figures || -- || + || echo-figure || <figure>, <caption> etc. ||
     55|| F: Handwritten || -- || + || echo-handwritten || <handwritten> ||
     56|| F: Chinese text || -- || + || echo-chinese-text || <head ti>, <p @indent>, <p @ics>, <pb @ics>  ||
     57|| F: Textflows || -- || + || echo-textflows || <head @flow>, <p @flow>, <div multiflow @flows>  ||
     58|| F: Tables || -- || + || echo-import-xhtml || <xhtml:table>  ||
     59|| F: Lists || -- || -- || echo-import-xhtml || <xhtml:ul> etc. ||
     60|| F: Floats || -- || -- || echo-float || <div float> ||
     61|| F: Images || -- || -- || echo-figure || <image> ||
     62|| || || || || ||
     63|| T: Milestones || (--) || + || echo-milestone || <pb> (auch F), <lb>, <cb> ||
     64|| T: Corruptions || -- || + || echo-gap || <gap>, <unsure>  ||
     65|| || -- || + || echo-de || <de:unknown>, <de:wrong> ||
     66|| T: Chinese notes || -- || + || echo-chinese-text || <lb halfline> ||
     67|| T: Floats || -- || + || echo-float || <anchor> ||
     68|| T: numbers etc. || (--) || -- || echo-mathematics || <num>, <var> ||
     69|| T: formulas || (--) || -- || echo-import-mathml || <mml:math> ||
     70|| T: Verse || -- || -- || echo-textflows || <lb @label> ||
     71|| T: Images || -- || -- || echo-figure || <image> ||
     72|| T: Gis || -- || -- || echo-gis || <place>, <time> ||
     73|| || || || || ||
     74|| G: Gis || -- || -- || echo-gis || <dcterms:temporal>, <dcterms:spatial> ||
     75
     76
     77=== Übersicht über die Module
     78
     79 * [source:trunk/schema/schema/echo/echo-echo.rnc echo] ist die Haupt-Datei des Schemas. Hier werden alle Module geladen.
     80
     81 * [source:trunk/schema/schema/echo/modules/echo-echo-start.rnc echo-start], [source:trunk/schema/schema/echo/modules/echo-echo-metadata.rnc echo-metadata], [source:trunk/schema/schema/echo/modules/echo-echo-div.rnc echo-div], [source:trunk/schema/schema/echo/modules/echo-echo-block.rnc echo-block], [source:trunk/schema/schema/echo/modules/echo-echo-block-scholarly.rnc echo-block-scholarly] definieren die Struktur des XML-Dokuments bis vom root element `<echo>` bis zum Text-Level:
     82{{{
     83<echo>               echo-start.rnc
     84    <metadata>       echo-metadata.rnc
     85    <text>           echo-div.rnc
     86        <div>           - " -
     87            <head>   echo-block.rnc
     88            <p>         - " -
     89                <s>     - " -
     90            <note>      - " -
     91}}}
     92  * [source:trunk/schema/schema/echo/modules/echo-echo-start.rnc echo-start]: Zum root element <echo> gibt es kein Gegenstück in den DESpecs. Es muss in das Dokument eingefügt werden.
     93  * [source:trunk/schema/schema/echo/modules/echo-echo-metadata.rnc echo-metadata]: Zu <metadata> und allen darin enthaltenen Metadaten gibt es kein Gegenstück in den DESpecs. <metadata> und einige Metadaten sind notwendig und müssen in das Dokument eingefügt werden. Andere Metadaten sind optional.
     94  * [source:trunk/schema/schema/echo/modules/echo-echo-div.rnc echo-div]: Zu <text> und <div> gibt es ebenfalls kein Gegenstück in den DESpecs. <text> ist notwendig und muss in das Dokument eingefügt werden. <div> kann weggelassen werden.
     95  * [source:trunk/schema/schema/echo/modules/echo-echo-block.rnc echo-block], [source:trunk/schema/schema/echo/modules/echo-echo-block-scholarly.rnc echo-block-scholarly]: <head> und <p> haben direkte Gegenstücke in den DESpecs. <note> hat die Gegenstücke <mgl>, <mgr> und <fn>. Das Element <s> hat kein Gegenstück in den DESpecs. Es muss aber in das Dokument eingefügt werden, um das Dokument valide zu machen.
     96
     97 * [source:trunk/schema/schema/echo/modules/echo-echo-content.rnc echo-content],  [source:trunk/schema/schema/echo/modules/echo-echo-content-scholarly.rnc echo-content-scholarly] definieren das Inline-Modell für Text. Der Text muss nicht weiter ausgezeichnet werden, um ein valides Dokument zu haben.
     98 
     99 * [source:trunk/schema/schema/echo/modules/echo-echo-attribute.rnc echo-attribute], [source:trunk/schema/schema/echo/modules/echo-echo-datatype.rnc echo-datatype] definieren Standard-Attribute und -Datentypen. Sie werden von allen Modulen verwendet.
     100
     101 * [source:trunk/schema/schema/echo/modules/echo-echo-gap.rnc echo-gap], [source:trunk/schema/schema/echo/modules/echo-echo-de.rnc echo-de]
     102 * [source:trunk/schema/schema/echo/modules/echo-echo-figure.rnc echo-figure]
     103 * [source:trunk/schema/schema/echo/modules/echo-echo-handwritten.rnc echo-handwritten]
     104 * [source:trunk/schema/schema/echo/modules/echo-echo-milestone.rnc echo-milestone]
     105 * [source:trunk/schema/schema/echo/modules/echo-echo-float.rnc echo-float]
     106 * [source:trunk/schema/schema/echo/modules/echo-echo-mathematics.rnc echo-mathematics]
     107 * [source:trunk/schema/schema/echo/modules/echo-echo-chinese-text.rnc echo-chinese-text]
     108 * [source:trunk/schema/schema/echo/modules/echo-echo-gis.rnc echo-gis]
     109 * [source:trunk/schema/schema/echo/modules/echo-echo-textflows.rnc echo-textflows]
     110 * [source:trunk/schema/schema/echo/xhtml/echo-echo-import-xhtml.rnc echo-import-xhtml]
     111 * [source:trunk/schema/schema/echo/modules/echo-echo-import-mathml.rnc echo-import-mathml]
     112
     113=== echo-start
     114
     115<text>: The default type is "free".
     116
     117=== echo-metadata
     118
     119[source:trunk/schema/schema/echo/modules/echo-echo-metadata.rnc echo-metadata]: There is no counterpart of the metadata in the DESpecs.
     120
     121==== dcterms
     122
     123 * <dcterms:identifier>
     124
     125Bibliographisch:
     126 * <dcterms:title> +, <dcterms:alternative> *
     127   * <dcterms:alternative> refines <dcterms:title>
     128 * <dcterms:creator> +, <dcterms:contributor> *
     129  * <dcterms:creator> refines <dcterms:contributor>
     130 * <dcterms:publisher> *
     131 * <dcterms:language>+
     132 * <dcterms:date> ?
     133 * <dcterms:description> *
     134
     135Lizenz:
     136 * <dcterms:rights> *, <dcterms:license> *, <dcterms:accessRights>
     137  * <dcterms:license> may be text or a URI.
     138  * <dcterms:license> and <dcterms:accessRights> refine <dcterms:rights>
     139 * <dcterms:rightsHolder> *
     140 * <dcterms:provenance> *
     141 * <dcterms:dateCopyrighted> ?
     142  * <dcterms:dateCopyrighted> refines <dcterms:date>
     143
     144Dabei meint + "mindestens einmal", * "beliebig oft", ? "höchstens einmal". Ohne Symbol heißt "genau einmal". Verpflichtend sind also:
     145 * <dcterms:identifier>
     146 * <dcterms:title>
     147 * <dcterms:creator>
     148 * <dcterms:language>
     149 * <dcterms:accessRights>
     150 
     151Zu "refines": creator refines contributor, d.h. ein creator ist automatisch auch ein contributor; aber ein contributor ist nicht unbedingt ein creator. Anders gesagt: A refines B heißt, A ist eine Teilmenge von B. Anderes Beispiel: Eiche refines Baum.
     152 
     153==== other metadata
     154
     155 * <font>, <font-family>
     156  * echo.font-families <-- "song style" in echo-chinese-text
     157 * <echolink>, <echodir>
     158
     159In general, there is no counterpart for <text> or <div> in the DESpecs.
     160
     161=== echo-div
     162
     163DESpecs nach Schema:
     164 * <ind> --> <div type="index">
     165 * <toc> --> <div type="toc">
     166 * other types:
     167  * if the type is in the standard list: type="definition" type-free="界"
     168  * if it is not in the standard list:   type="other" type-free="界/definition"
     169
     170Liste aller div-Typen, die auf besondere Weise behandelt werden:
     171 * u.a. float
     172 * aber auch multiflow, parallel; chapter, section; ...
     173
     174=== echo-block
     175
     176 * Headings: <head>
     177  * <h> --> <head>
     178 * Semantic units: <s>
     179  * (<s> is not in the raw text)
     180 * Floating objects in <s> (all <note>, <handwritten>, <table>; most <figure>; some <math>) are replaced by <anchor> and moved to a <div type="float"> directly behind the <p>. The new <div type="float"> contains all <note>, <handwritten>, <figure>, <table>, <math> that have been moved in this <div>.
     181 * Notes: <note>
     182  * <mgl> --> <anchor type="note"/>, <note position="left">
     183  * <mgr> --> <anchor type="note"/>, <note position="right">
     184  * echo.note.content = echo.flexible.model to allow for different kinds of notes
     185
     186=== echo-block-scholarly
     187
     188 * <set-off>
     189
     190=== echo-content
     191
     192Most elements in this module have no counterpart in the Specs and will be added in the post-processing stage.
     193
     194==== <emph>
     195
     196<emph> for emphasis (should be used only when something is not tagged otherwise)
     197
     198The tags `_ _` (for italics), `<bf>`, `<sc>`, `<_>`, `<^>`, `<ul>`, `<ol>`, `<st>`, `<red>`, `<sp>` in the Specs are normally represented by <emph style="...">. The tags can be combined, e.g. <emph style="it bf"> for bold italics. For a whole <s> or <p>, the style attribute is there (or even higher in the hierarchy).
     199
     200==== <reg>
     201
     202Only the original text is regularized using echo.reg; typing conventions and additional typos in the transcription are silently resolved.
     203
     204list of typing conventions in the DESpecs which are silently resolved:
     205 * `$` --> ſ
     206 * `\'q`  --> q + combining diacritic (U+0300 etc.) and normalization form C, for example q̀
     207 * ...
     208
     209examples:
     210{{{
     211<reg orig="ijs" type="lig">ijs</reg>
     212<reg orig="sphęrae" type="simple">sphaerae</reg>
     213<reg orig="sphęrae">sphaerae</reg>
     214<reg orig="sphę­ rae" type="simple">sphae­<lb/>rae</reg>
     215<reg orig="eiuſdẽ" type="context">eiuſdem</reg>
     216<reg orig="eſsẽt" type="context">eſsent</reg>
     217<reg orig="lib." type="context">liber</reg>
     218in <reg orig="lib." type="context">libro</reg>
     219<reg orig="qñ" type="wordlist">quando</reg>
     220<reg orig="tm̃" type="wordlist/context">tamen</reg>
     221<reg orig="tm̃" type="wordlist/context">tantum</reg>
     222<reg orig="Arist." type="unresolved">Arist.</reg>
     223<reg orig="inrerrogas" type="typo" resp="paul">interrogas</reg>
     224<reg orig="quem" type="conjecture" resp="paul">quam</reg>
     225<reg orig="re ferre" type="conjecture" resp="paul">re­<lb/>ferre</reg>
     226<reg orig="ꝑꝑ" type="unknown">ꝑꝑ</reg>
     227<reg orig="ꝑꝑ" type="conjecture" resp="paul">prope</reg>
     228}}}
     229note:
     230  * the default type is "simple", e.g. <reg orig="sphęrae">sphaerae</reg>
     231   * Beispiel veraltet!
     232   * Beachte: der type kann zurzeit nicht weggelassen werden, und das ist auch gut so, falls man nämlich die <reg> automatisiert nachbearbeiten muss.
     233  * the first exampe ijs applies only if `ij` is not silently resolved
     234  * missing hyphens are indicated by a soft hyphen "­" rather than <reg>; however, you may use "conjecture" in non-trivial cases
     235  * the generic "abbr" may be used for any abbreviation
     236  * abbreviations are not resolved within <ref>, e.g.  ex <ref id="N400238">.19. lib. quinti Eu-<lb/>clid.</ref> (wirklich?)
     237
     238==== Text-Modelle
     239
     240Avoiding Recursions: Wie ist die Inline-model-Hierarchie?
     241  * inline anfangen können:  s head caption description variables, evtl. note handwritten xhtml
     242  * in inline, und Inhalt inline (mit Rekursionsgefahr): s-set-off, ref, foreign, emph, q
     243  * in inline, und Inhalt plaintext: reg, sic, num, var, place, time
     244  * in inline, und inhalt es selbst: mml.math
     245  * in plaintext, und Inhalt plaintext: gibt es nicht
     246  * in plaintext, Inhalt text: unsure (Inhalt in plaintext ändern?)
     247  * in plaintext, leer: milestones, anchor, gap, unknown, wrong
     248
     249Schematron-Regel, die Rekursionen aufspürt, d.h.
     250 * z.B. <ref> in <ref>
     251 * z.B.  <ref> in <foreign> in  ... in <ref>
     252also zusammen: kein Element aus dieser Gruppe darf sich sich selbst als ancestor haben.
     253
     254
     255=== echo-content-scholarly
     256
     257 * <ref>
     258 * <sic> for mistakes in the original text:
     259  * o<!>  -->  o<de:wrong/>  -->  <sic comment="n missing">o</sic> (see the discussion in echo-de)
     260 * <foreign>: Foreign text is not marked in the transcription, i.e. <foreign> cannot be inserted automatedly without additional linguistic knowledge.
     261  * Exception: <rom>sentence</rom> --> <foreign xml:lang="la">sentence</foreign> with language "la" as a first guess, and similarly in Chinese text.
     262  * (echo.foreign has echo.core.attrib, but echo.language.attrib is obligatory)
     263 * Quotations:
     264  * <q> is for short inline quotes. Note that echo.delimiter-attrib is optional; however, please use it if possible
     265  * <quote> (echo.quote) for longer inline quotes (one-sentence quote are <quote><s>Sentence.</s></quote> and not <s><q>Sentence.</q></s>)
     266  *  <quote> (echo.blockquote) for blockquotes
     267  * Es kann keine Rekursionen von quote-Elementen geben.
     268
     269=== echo-gap
     270
     271 * @@    --> <gap extent="2"/>
     272 * <gap> --> <gap/>
     273 * x< ? > --> x<unsure/> or <unsure>x</unsure> (this can not be fully automated)
     274
     275=== echo-de
     276
     277This module contains tags from the DESpecs that will be removed in the course of processing. We use the namespace "de" for the corresponding elements in the xml:
     278 * <001> --> <de:unknown code="001"/> (bzw. wir haben eine Tabelle, was gemeint ist)
     279 * <!>   --> <de:wrong/> --> remove or <sic>
     280
     281=== echo-figure
     282
     283 * <fig> --> <figure>, eventuell mit <anchor/>
     284 * <cap> --> <caption>
     285 * <desc> --> <description>
     286 * <var> --> <variables>
     287
     288=== echo-handwritten
     289
     290In its simplest form, <handwritten> is just an empty tag. Nonetheless, within <s> it is replaced by <anchor> and moved to <div type="float"> to cater for scholarly additions, i.e. it is part of echo.float.class and not of echo.inline.class
     291
     292 * <hd> --> <handwritten/>, eventuell mit <anchor/>
     293
     294=== echo-float
     295
     296=== echo-milestone
     297
     298==== line breaks
     299
     300[Dieser Abschnitt ist sicher veraltet!]
     301
     302<lb/> can be in plaintext (<s>, <head>, some <note>, all members of echo.inline.class) and <p>
     303
     304in <p>: since a paragraph is split into <s>, most line breaks are actually in <s>. However:
     305 * <lb/></s><s> and </s><s><lb/> shouldn't occur (--> </s><lb/><s> [and space before </s>?])
     306 * <lb/></s></p> shouldn't occur at all
     307
     308in <s> (and similarly for <head> and the members of echo.inline.class):
     309 * line break --> <lb/>; no space before <lb/>; no line break after <lb/>; space after <lb/> if there is a hyphen before <lb/> (no automated space if the hyphen is missing)
     310
     311examples:
     312 * <s>亦<lb/>能使人無疑。</s>
     313 * <note>Plutar <lb/>chus in <lb/>commẽ <lb/>tario de <lb/>dæmo-<lb/>nio So-<lb/>cratis.</note>
     314
     315We use the normal hyphen U+002D instead of the soft hyphen U+00AD because the soft hyphen is not displayed in the xhtml. --> ?
     316
     317==== column breaks
     318
     319 * <col 1>...</col><col 2>...</col>  -->  ...<cb/>...
     320
     321==== page breaks
     322
     323[Dieser Abschnitt ist sicher veraltet!]
     324
     325<pb/> can occur wherever <lb/> occurs (although it will be rare in <head>), and <div>
     326 * <pb vii><rh>xyz</rh> --> <pb n="10" o="vii" o-norm="7" rhead="xyz" xlink:href="URI"/>
     327 * <pb 一六七a>  --> <pb n="..." o="一六七a" o-norm="167a" xlink:href="URI"/>
     328
     329=== echo-attribute
     330
     331In echo-attribute werden Standard-Attribute definiert.
     332
     333Text-Eigenschaften:
     334 * echo.language.attrib (@xml:lang)
     335 * echo.style.attrib (@style):
     336   * direkt in: <text>; <emph>, <num>, <var>, <w>, <place>, <time>, <person>
     337   * via echo.core.attrib in: <div>, <p>, <quote>, <note>, <handwritten>, <entry>; <reg>, <foreign>, <ref>, <q>
     338   * via echo.inline.attrib in: <head>, <s>, <caption>, <description>, <variables>, <form>, <translation>, <pronunciation>
     339   * in xhtml:* als @class
     340 * echo.id.attrib (@xml:id)
     341 * echo.core.attrib fasst echo.language.attrib, echo.style.attrib und echo.id.attrib zusammen
     342 * echo.space.attrib (@xml:space="preserve")
     343 * echo.inline.attrib ist echo.core.attrib plus echo.space.attrib
     344
     345Div-Attribute:
     346 * echo.n.attrib (@n)
     347 * echo.level.attrib (@level)
     348Notes:
     349 * echo.symbol.attrib (@symbol)
     350Links:
     351 * echo.file.attrib (@file)
     352 * echo.internal-link.attrib (@xlink:href, @xlink:label, @xlink:type)
     353 * echo.external-link.attrib (@xlink:href)
     354Zitate:
     355 * echo.delimiter.attrib (@open, @close)
     356 
     357=== echo-datatype
     358
     359=== echo-mathematics
     360
     361 * number <num>:
     362  * "vii" --> <num value="7">vii</num>
     363  * "½"   --> <num value="0.5">½</num>
     364 * variable <var>:
     365  * "AB" --> <var type="line">AB</var> (type ist optional)
     366
     367Eine Funktion von <num> und <var> ist es, den Inhalt vor der morphologischen Analyse zu verstecken.
     368
     369Note: The scope of echo.num and echo.var is very limited. More complex mathematics is expressed with MathML --> echo-import-mathml
     370
     371=== echo-chinese-text
     372
     373 * <ti> --> <head type="ti">
     374 * indentations in Chinese text:
     375  * <p ii> --> <p indent="2char"> oder nur "2"?
     376  * <p xx> --> <p indent="-2char">
     377  * (indent is deliberately not defined as style="valid css" because it may be semantically meaningful)
     378 * Linien:
     379  * <sl> --> <emph style="sl">
     380  * <dl> --> <emph style="dl">
     381  * <wl> --> <emph style="wl">
     382  * <cl> --> <emph style="cl">
     383
     384Small text:
     385 * in <p>:  <sm>  --> <small>
     386 * everywhere else: <emph style="sm"> (<h>, rhead, <ti>, <toc>, etc.)
     387 * `\\` --> <smlb/>
     388
     389(plus some manual corrections where this simple distinction doesn't fit, e.g. <sm>chen</sm>)
     390
     391=== echo-gis
     392
     393Note: this module is still experimental.
     394
     395Beachte in diesem Modul definierte Metadaten
     396
     397=== echo-textflows
     398
     399@flow is normally a number, or "footnote"
     400
     401=== echo-import-xhtml
     402
     403The xhtml modules are part of the Jing distribution:
     404 * [http://relaxng.org/ Relax NG Homepage]
     405 * Thai Open Source: [http://www.thaiopensource.com/relaxng/ Relax NG], [http://www.thaiopensource.com/relaxng/xhtml/ xhtml modules]
     406 * Jing and Trang at [http://code.google.com/p/jing-trang/ Google Code]
     407 * xhtml modules in our local copy of the Jing distribution: [source:trunk/schema/thirdparty/jing-20091111/lib/xhtml/modules/basic-table.rng basic-table.rng],
     408 [source:trunk/schema/thirdparty/jing-20091111/lib/xhtml/modules/list.rng list.rng],
     409 [source:trunk/schema/thirdparty/jing-20091111/lib/xhtml/modules/attribs.rng attribs.rng],
     410 [source:trunk/schema/thirdparty/jing-20091111/lib/xhtml/modules/datatypes.rng datatypes.rng]
     411
     412The original rng files can be converted into the Relax NG compact syntax using [http://www.thaiopensource.com/relaxng/trang-manual.html Trang]. Oxygen offers a GUI for this conversion.
     413
     414Diese Module übernehmen wir dann ohne weitere Änderungen. Alle Anpassungen werden in echo-import-xhtml gemacht.
     415
     416==== xhtml-basic-table
     417
     418We ignore Block.class in xhtml-basic-table: The following lines replace
     419
     420"Block.class |= table"  in xhtml-basic-table
     421
     422{{{
     423echo.float.class  |= xhtml.table
     424echo.anchor.types |= "table"
     425}}}
     426
     427==== xhtml-list
     428
     429We ignore Block.class in xhtml-list: The following lines replace
     430
     431"List.class = ul | ol | dl",
     432
     433"Block.class |= List.class"
     434
     435{{{
     436echo.float.class  |= xhtml.ul | xhtml.ol | xhtml.dl
     437echo.anchor.types |= "ul" | "ol" | "dl"
     438}}}
     439
     440Note that xhtml:ul, xhtml:ol, xhtml:dl do not correspond to <ul>, <ol>, <dl> in the DESpecs!
     441
     442==== xhtml-attribs
     443
     444We use the following xhtml elements: table, caption, tr, th, td;  dl, dt, dd; ol, ul, li.
     445All these elements have Common.attrib (th and td via Cell.attrib).
     446xml:lang and class are already in Common.attrib, and we add xml:id { xsd:NCName } to it
     447(however, Common.attrib already includes the attribute id { xsd:ID })
     448
     449==== xhtml-datatypes ====
     450
     451==== xhtml-text ====
     452
     453Dieses Modul wird nicht importiert. Stattdessen werden Inline.model und Flow.model durch echo.flexible.content ersetzt:
     454 * Inline.model = echo.flexible.content
     455 * Flow.model   = echo.flexible.content
     456ursprüngliche Definitionen:
     457 * Inline.model = (text | Inline.class)*
     458 * Block.mix = Block.class
     459 * Block.model = Block.mix+
     460 * Flow.model = (text | Inline.class | Block.class)*
     461
     462=== echo-import-mathml
     463
     464Note: Simple mathematical terms, i.e. numbers and variables, are marked using echo.num and echo.var (defined in echo-mathematics).
     465
     466mml.math.content erlaubt beliebige Elemente <mml:*> innerhalb von <mml:math>.
     467
     468This placeholder code above is good enough for the moment. We simply assume that the MathML parts are well-formed. This is plausible since the MathML code is created from a LaTeX formula by a MathML-converter.
     469
     470In addition, Oxygen seems to have a separate validation engine for MathML.
     471