Re: Exploring new vocabularies for HTML

Ian Hickson wrote on 03/29/2008 04:21:03 PM:
>
> To clarify, any implication rules would be very explicit in the spec, and

> the result would be unambiguous. The question is just whether required
> tags could be omitted in the syntax.
>
> For example, it seems like this:
>
>    <math> 3 + n = 6 </math>
>
> ...could be unambiguously turned into:
>
>    <math> <mrow><mn>3 </mn><mo>= </mo><mi>n </mi><mo>= </mo><mn>6
> </mn></row></math>
>
> What problems would this introduce?

Jacques Distler[1] is not currently subscribed to this mailing list, nor
does he have the time to follow it, but it occurred to me that he might
have an opinion on the subject, so I asked him, and he gave me permission
to post his response here.

= = =

The rules for inferring elements are going to get very complicated
very fast. For instance, does

     146,382

get translated as

    <mn>146,382</mn>

or as

    <mn>146</mn><mo>,</mo><mn>382</mn>

? How about

      1468,3825

? What about

     a b

Is this

    <mi>a b</mi>

    <mi>a</mi><mi>b</mi>

or

    <mi>a</mi><mo>&InvisibleTimes;</mo><mi>b</mi>

And that's just us getting started. Just wait till we get to how to
interpret loose tokens floating around inside <mprescripts> elements.

I generally think that inferred elements (the canonical example in
HTML is <tbody>) are a bad idea, confusing to authors (who need to be
very sophisticated to realize that they're there in the DOM, even if
they're not there in the serialization).

The MathML Spec already has a bunch of instances where there are
inferred <mrow> elements, and this has caused a fair amount of interop
headaches, when UA's (in particular, Gecko) get this wrong.

Please don't add more inferred elements. This is the WORST aspect of
existing HTML (which must, alas, be retained for legacy reasons).

= = =

- Sam Ruby

[1] http://golem.ph.utexas.edu/~distler/

Received on Monday, 31 March 2008 17:59:30 UTC