- From: Patrick Ion <pion@umich.edu>
- Date: Mon, 20 Jul 2020 10:57:32 -0400
- To: Murray Sargent <murrays@exchange.microsoft.com>
- Cc: Neil Soiffer <soiffer@alum.mit.edu>, Frédéric Wang <fwang@igalia.com>, "public-mathml4@w3.org" <public-mathml4@w3.org>
- Message-ID: <CAKUiisAgoXMQ_XJef5cuVTuJcfpGcy7pqBdJisDsdxrxS4y=QA@mail.gmail.com>
It's clear that '<mrow>-like' has provided confusion. That being so there's a good argument for reformulation to avoid this adjective. Having been around the MathML development more or less as long as Murray (and also similarly around as long in general) I note, for information, how I think <mrow> developed. I'd say, and this is I suppose an expression of my personal mental model, that <mrow> was introduced as a general container element, or grouping, for sequences of signs in mathematical formulas that were not otherwise special enough to deserve special names. If you are thinking of analyzing math formulas into trees, then '<mrow>...</mrow>' acts like a pair of grouping 'brackets', like say '{...}' in TeX. Most are used to seeing and reading formulas in horizontal text lines, so these are signs set out in a row, contrast to a column, which is also a commonplace notion to those used to dealing with mathematical formulas; the 'm' is prefixed as usual because we were trying to have a math namespace before there were namespaces explicitly in use. I suppose '<mgroup>' might have done to but in math there is a lot special vocabulary associated to groups as algebraic structures; rows and columns are relatively neutral in mathematical semantics. The fact that a printed version of a symbol sequence might have to be broken over the end of a line doesn't change the grouping as a formula term, and it might be printed RtoL instead of the LtoR most involved were used to. So '<mrow>-like' meant that the content list of characters had no particular properties beyond those conventional for any old 'row-like' formula. There were no distinguished places in the list, no special rules for setting certain character types other than alphabetics being in 'math italic as usual', etc. At the inception of MathML there were at least four different groups who had clear ideas of how to proceed. They already had more-or-less universal systems to do the job of expressing math in a machinable markup. There were (at least) IBM's Scratchpad (now Axiom), Wolfram's Mathematica, Maple, and, of course, TeX. The publishers were going toward SGML and stopping essentially with the clearer and more constrained XML. HTML was in active evolution but CSS was only just being invented. For that matter, XML was being actively developed as a standard. Ragget's book on HTML 3.1 with its treatment on math appeared early on. But the Math WG started its work with members from each of the above communities, and from Elsevier, Microsoft and elsewhere. All had obvious mathematical educations as well, though clearly different ones individually. The WG's task was to developed markup for math formulas (with an eye to somewhat similar types of formulas in science) but trying to allow their embedding in HTML (or more reliably XHTML) pages and their standalone processing for print or computer algebra systems. The standards environment shifted a lot in early days, and clearly continues to change now. Simple notions continue to become more complex as they are made to be supposedly more flexible and simultaneously more constrained. The notion of an 'anchor' as a marker mentioning some associated URL on the web has become an element <a> with a great number of specific expectations on how this mark is to be processed into actionable activity by a browser. The addition of the 'ping' attribute as a requirement, to allow the reporting of any interest shown in this mark to an arbitrary list of targeted recipient URLs, is, I suppose, a hack to overcome the design of web links as directional. However, together with all the Ecmascript programming allowed, it facilitates covert surveillance as never before. No wonder handling the new attributes of <a> is a major programming overhead. All the best, Patrick On Fri, Jul 17, 2020 at 7:14 PM Murray Sargent < murrays@exchange.microsoft.com> wrote: > I think I might know what’s confusing here since I was confused a bit > about it when I first studied MathML back in the 1990s. > > > > <mrow> is a generic container that in most XML formats would be a set of > individually named containers. To find out the nature of an <mrow> > container, you parse it. An example is the integral > > > > <mrow> > > <msubsup> > > <mo>∫</mo> > > <mn>0</mn> > > <mi>a</mi> > > </msubsup> > > <mrow> > > <mi>x</mi> > > <mi>ⅆ</mi> > > <mi>x</mi> > > </mrow> > > </mrow> > > > > And the trigonometric function > > > > <mrow> > > <mi>sin</mi> > > <mo>&x2061;</mo> > > <mi>x</mo> > > </mrow> > > > > Ironically <mfenced> has been deprecated for web use, so <mrow> infix > should be used for that too. > > > > In OMML, which probably overdoes explicit elements, all three of these > <mrow> containers have explicit names, namely, <nary>, <func>, and <d>, > respectively. In addition, all OMML object arguments have explicit names, > such as <num>, <den>, <sub> and <sup>. > > > > Some containers like <math> and <msqrt> are “mrow-like” in that they can > have an arbitrary number of children, but you know the meanings of these > containers up front without parsing. > > > > <mrow> and mrow-like containers have some common properties from a display > point of view, such as stretching vertically stretchy symbols. Also an > <mrow> acts as a single argument for elements like <mfrac>.that have > positional arguments, > > > > Presentation MathML is unique AFAIK in these respects. Other XMLs that > I’ve worked with over the years have explicit elements that are all prefix > in nature, rather than a mixture of infix and prefix. I’m used to infix > since UnicodeMath and math itself have much infix notation. But I can > sympathize with folks who might be confused at least at first by MathML’s > <mrow> and positional arguments. > > > > Murray > > > > *From: *Neil Soiffer <soiffer@alum.mit.edu> > *Sent: *Friday, July 17, 2020 3:05 PM > *To: *Frédéric Wang <fwang@igalia.com> > *Cc: *public-mathml4@w3.org > *Subject: *[EXTERNAL] Re: Minutes: MathML Core Meeting, July 13, 2020 > > > > I don't feel an explanation is needed, but Brian said he and others who > don't live and breathe MathML were confused by "mrow-like". With the > change to "grouping", I don't know if an explanation is needed; he would be > better positioned to answer this. The other ones (scripted, radical) don't > have explanations. Seems to me if you give an explanation for one of the > three, you should do it for all three. > > > > Neil > > > > > > > <https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.avg.com%2Femail-signature%3Futm_medium%3Demail%26utm_source%3Dlink%26utm_campaign%3Dsig-email%26utm_content%3Dwebmail&data=02%7C01%7Cmurrays%40exchange.microsoft.com%7C7455e0a6aca84bcbe37f08d82a9d76d9%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C637306203078365392&sdata=ERngjIq%2Baxbe405ocIg4j57jy%2F7n7cVhAP3aoam54wI%3D&reserved=0> > > Virus-free. www.avg.com > <https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.avg.com%2Femail-signature%3Futm_medium%3Demail%26utm_source%3Dlink%26utm_campaign%3Dsig-email%26utm_content%3Dwebmail&data=02%7C01%7Cmurrays%40exchange.microsoft.com%7C7455e0a6aca84bcbe37f08d82a9d76d9%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C637306203078365392&sdata=ERngjIq%2Baxbe405ocIg4j57jy%2F7n7cVhAP3aoam54wI%3D&reserved=0> > > > > On Thu, Jul 16, 2020 at 9:01 AM Frédéric Wang <fwang@igalia.com> wrote: > > On 13/07/2020 23:32, Neil Soiffer wrote: > > > like: #221 > <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmathml-refresh%2Fmathml%2Fissues%2F221&data=02%7C01%7Cmurrays%40exchange.microsoft.com%7C7455e0a6aca84bcbe37f08d82a9d76d9%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C637306203078375392&sdata=Bmm7yJtInkED%2F8veVwMJeZG7AIjl%2FT6xfQAMrUfhG3I%3D&reserved=0> > > BK: said he and others were confused by the definition of “mrow-like” in > the spec. What properties of mrows are shared between them? > > NS and DC: it is just a list of elements-- it says nothing about the > properties. > > BK: people read things into the name and ask how they are “like” each > other. > > BK: FW suggested in a comment on the issue it could be renamed as > “grouping elements” and potentially similar names for “scripted elements”. > I think that is less confusing. > > NS: There is no definition for “script-like”, so this is really just about > changing the one name unless FW is planning on a bigger rewrite which > doesn’t seem necessary. > > > https://mathml-refresh.github.io/mathml-core/#mathml-elements-and-attributes > <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmathml-refresh.github.io%2Fmathml-core%2F%23mathml-elements-and-attributes&data=02%7C01%7Cmurrays%40exchange.microsoft.com%7C7455e0a6aca84bcbe37f08d82a9d76d9%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C637306203078375392&sdata=HnXbLq7doWwe5UNpDtPGyjpj8mKyZqQJx3BU8qAqbOg%3D&reserved=0> > > has 3 definitions: "mrow-like elements", "scripted elements" and "radical > elements". > > I think Brian suggested 2 things: rename "mrow-like" and add brief > explanation ( > https://github.com/mathml-refresh/mathml/issues/221#issuecomment-641743332 > <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmathml-refresh%2Fmathml%2Fissues%2F221%23issuecomment-641743332&data=02%7C01%7Cmurrays%40exchange.microsoft.com%7C7455e0a6aca84bcbe37f08d82a9d76d9%7C72f988bf86f141af91ab2d7cd011db47%7C0%7C0%7C637306203078385382&sdata=qGmatInOcPHH0hUYKn0V9G%2FbHR7sPHDkWpD0mUPOn5I%3D&reserved=0> > ). These are pure renaming and explanatory comment, the definitions itself > remain unchanged. > > I understand there was consensus on the renaming. Do I also need to add a > brief explanation in this section too? > > -- > > Frédéric Wang > > >
Received on Monday, 20 July 2020 14:58:03 UTC