MathML und der Browserkrieg



Wer sich auf meinem Blog umschaut, sieht dass viele meiner Artikel mathematische Formeln beinhalten. Bis jetzt verwende ich ein WordPress-Plugin, welches Formeln in LaTeX-Format verarbeiten kann. Damit werden aus dem LaTex-Code PNG-Grafiken erstellt und in den HTML-Code eingebunden. Ein zweiseitiger Artikel hat deswegen locker 30 eingebundene Grafiken.
Der Leser muss dadurch nicht nur lange warten bis die Grafiken geladen sind, nein, er bekommt auch noch ein inkonsistentes Erscheinungsbild geboten.

Bereits 1998 hat W3C einen Standard zur Darstellung von mathematischen Formeln in HTML veröffentlicht – MathML. Dabei werden Formeln in XML-Format einfach in den HTML-Code eingefĂŒgt. Der Code selbst kann zum Beispiel von einem speziellen Programm generiert werden.

Beispiel MathML-Code:

<math mode="display" xmlns="http://www.w3.org/1998/Math/MathML">
    <mover><mi>x</mi><mo>&rarr;</mo></mover>
    <mo>=</mo>
    <mfenced>
        <mtable><mtr>4<mtd/></mtr><mtr>2<mtd/></mtr><mtr>5<mtd/></mtr></mtable>
    </mfenced>
    <mo>+</mo><mo>&mu;</mo>
    <mfenced>
        <mtable><mtr>-3<mtd/></mtr><mtr>3<mtd/></mtr><mtr>4<mtd/></mtr></mtable>
    </mfenced>
</math>
x=425+μ-334

Beispiel MathML-Code 2:

<math mode="display" xmlns="http://www.w3.org/1998/Math/MathML">
  <mrow>
    <mi>x</mi>
    <mo>=</mo>
    <mfrac>
      <mrow>
        <mo form="prefix">&#x2212;<!-- &minus; --></mo>
        <mi>b</mi>
        <mo>&#x00B1;<!-- &PlusMinus; --></mo>
        <msqrt>
          <msup>
            <mi>b</mi>
            <mn>2</mn>
          </msup>
          <mo>&#x2212;<!-- &minus; --></mo>
          <mn>4</mn>
          <mo>&#x2062;<!-- &InvisibleTimes; --></mo>
          <mi>a</mi>
          <mo>&#x2062;<!-- &InvisibleTimes; --></mo>
          <mi>c</mi>
        </msqrt>
      </mrow>
      <mrow>
        <mn>2</mn>
        <mo>&#x2062;<!-- &InvisibleTimes; --></mo>
        <mi>a</mi>
      </mrow>
    </mfrac>
  </mrow>
</math>
x=b±b24ac2a

Und was seht ihr? Schön gezeichnete Formeln, die sich der Schriftart und SchriftgrĂ¶ĂŸe automatisch anpassen (mit Strg und „+“ ausprobieren) oder nur ein komisches Zahlenwirrwarr?
So sehen die beiden Beispiele in Firefox aus:
Formel Beispiel 1
Formel Beispiel 2

Benutzer von Google Chrome, Internet Explorer und Safari sehen wahrscheinlich nur so etwas in der Art:
Formel falsch dargestellt

Praktisch alle Browserhersteller kĂ€mpfen um Marktanteile und versuchen immer weiter die Seitendarstellung oder die Ladezeit um paar zerquetschte Millisekunden schneller zu machen, aber keiner bemĂŒht sich Standards, die bereits ĂŒber 10 Jahre alt sind, zu implementieren. Firefox und Opera (nicht getestet) haben zumindest die Basis implementiert, die fĂŒr viele Bereiche ausreichen. WebKit basierte Browser wie Chrome oder Safari spielen zwar in den Nightly Builds mit MathML rum, aber scheinen es auch nicht gerade eilig zu haben.

Etwas kurios ist die Sache mit Internet Explorer. Um MathML in IE darzustellen braucht man ein Plugin, dass es bereits seit IE 5.5 gibt (soweit ich weiß).
Das kuriose ist, das MS bereits super funktionierenden Parser und Engine zur Darstellung von MathML hat. Das aktuelle Office 2010 hat einen wunderbaren Formel-Editor drin, der die Formeln in MathML-Format einbinden. Das „Mathematik-Eingabebereich“ Tool, dass bei Windows 7 standardmĂ€ĂŸig dabei ist, mit dem man Formeln mit der Maus bzw. Stift schreiben kann um diese in Word einzufĂŒgen, erzeugt auch MathML-Code.
Die Darstellung ist auch super, wie man es zum Beispiel an diesem Artikel sehen kann.
Sie haben die Technologie und nutzen sie nicht. Wie es scheint, hat Microsoft ein großes Kommunikationsproblem zwischen den einzelnen Entwicklungsabteilungen.
Mit dem Internet Explorer 9 wird sich dabei auch nichts Àndern. Zumindest erhÀlt man mit IE9 Preview 3 den gleichen Mist wie mit IE8.

Meiner Meinung nach ist MathML UnterstĂŒtzung eine MarktlĂŒcke, die nicht erkannt wird. Die GrĂ¶ĂŸe des wissenschaftlichen Sektors wird unterschĂ€tzt.
Viele UniversitĂ€ten stellen Fachtexte online, bei denen Formeln als Grafiken eingebunden sind. Ersten sieht es total schlecht bis unleserlich aus, zweiten habe ich schon so viele Fachtexte gesehen, in denen die Grafiken einfach fehlen (kA warum), was dazu fĂŒhrt dass der ganze Text unbrauchbar wird. WĂ€ren die Formeln als MathML eingebunden, so könnte man sie auch heute noch betrachten.

Dies fĂŒhrt zum nĂ€chsten Punkt: Informationserhalt im Internet. Wollte man frĂŒher einer breiter Menschenmasse was sagen, so schrieb man ein Buch, heute betreibt man eine InternetprĂ€senz. Geht die Website offline, so verschwinden auch viele Informationen.
Es gibt Projekte, die versuchen diese Informationen zu erhalten. Auch Google sichert alte Inhalte. Das Problem ist, dass meistens nur der HTML-Code gesichert wird. Damit haben wir wieder das Problem, dass die Fachtexte ohne Formeln unbrauchbar sind.

Man schimpft stĂ€ndig auf MS, dass IE Standards nicht ĂŒberstĂŒrzt, aber sind denn andere Browserhersteller so viel besser?
Es bleibt nur zu hoffen, dass die Browserhersteller mehr an ihren Produkten arbeiten, als nur jeden Monat die Versionsnummer zu erhöhen, weil die Seitenladenzeit von 500ms auf 499ms verbessert werden konnte.




Trackback URI | Kommentare als RSS

Einen Kommentar schreiben

XHTML: Du kannst folgende Tags verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <sub> <sup>

Hinweis: Ich behalte mir das Recht vor solche Kommentare, die Beleidigungen oder rechtswidrige Inhalte beinhalten erst nach einer Editierung freizugeben oder kommentarlos zu löschen. Ähnliches gilt auch für Kommentare die offensichtlich nur der Suchmaschinenoptimierung dienen.