Daniel.S: 5 und SVG bzw. MathML

Beitrag lesen

Hallo,

ich hab jetzt auf die Schnelle nicht in der HTML5-Spec nachgeschaut sondern nur bei Wikipedia, aber wie kann ich denn verstehen, dass SVG und MathML nur _ohne Namensraumpräfix_ in HTML5 verwendet werden dürfen?

Das bedeutet, dass du in HTML Elemente nicht in der Form mathml:mo oder svg:path notieren darfst, sondern nur als <mo> bzw <path> (optional darfst du im Wurzelelement des SVG- oder MathML-Abschnitts dessen Namespace im xmlns-Attribut hinterlegen). In XHTML sind beide Varianten möglich (hier musst du aber den Namensraum immer Angeben, entweder im ersten SVG/MathML-Element oder als Präfixdefinition im Wurzelelement).

Ich kann dir allerdings nicht sagen, ob sich die beiden Varianten von der Schreibweise abgesehen voneinander unterscheiden.

In HTML5 kann ich per Spec ja SVG, MathML oder Anderes einfach „hereinwurschteln“, aber wie sieht es denn mit XHTML5 aus?

Egal ob HTML oder XHTML, es gibt Regeln, wie fremdsprachige Abschnitte eingefügt werden können - und die sind nahezu identisch. In HTML werden SVG- und MathML-Elemente automatisch ihrem Namensraum zugeordnet, in XHTML musst du das wie gewohnt manuell machen.

Gehören da SVG und MathML mit zur Spec oder brauche ich dann doch wieder Namensräume? Oder soll XHTML5 gar kein valides XML sein?

Der einzige Unterschied zwischen HTML und XHTML ist, dass du in HTML nur SVG und MathML einfügen kannst, während du in XHTML alle möglichen XML-Derivate einfügen kannst (theoretisch).

Wenn der Autor alles richtig macht ist XHTML(5) valides, well-formed XML.

Gruß, Daniel