Re: [EXTERNAL] Re: Minutes: MathML Core Meeting, July 13, 2020

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