- From: David Carlisle <davidc@nag.co.uk>
- Date: Mon, 05 Nov 2012 00:18:28 +0000
- To: Frédéric WANG <fred.wang@free.fr>
- CC: www-math@w3.org
On 04/11/2012 12:54, Frédéric WANG wrote: > I agree that <semantics> is supposed to be used to annotate the first > child and so it is weird to "annotate the annotation". However, > without further restrictions, the first child may be any MathML > element, including an <annotation>, so syntactically Jacques > Distler's use case is valid The text (and the MathML2 DTD) may not be as exact as it could be but I don't think the spec phrase " Any MathML expression may appear as the first child " is the same as saying any MathML element is allowed. There are many MathML elements that are only usable in restricted contexts and are not, in themselves, expressions (<mtr> <mtd> <sep/> <none/> <mprescripts/> for example). <annotation> and <annotation-xml> fall into this category so are not MathML expressions or intended to be allowed as first child of semantics. That said, even though I think it's correct for the MathML3 schema to declare that usage invalid, I think it's reasonable (and consistent with html implementation policy generally) for a browser implementation to keep it working if it worked before. As I mentioned this is tighter in the MathML3 schema but even in the MathML2 DTD this was fairly explicit, "MathML Expression" is the markup that can appear as a child of <math> which in MathML2 DTD was the parameter entity %MathExpression; which expands to a list of all top level elements but explicitly excluding annotation-xml and the other elements listed above. David
Received on Monday, 5 November 2012 00:18:49 UTC