Neil, Thanks for the information. MathFlow tools are not downloadable for evaluation. That said, MathPlayer fails to render the following MathML, see screenshot attached. <math xmlns="http://www.w3.org/1998/Math/MathML"> <mstyle displaystyle="true"> <mstack stackalign="right"> <mscarries> <none/> <mn> 1 </mn> <none/> </mscarries> <msrow> <mn> 241 </mn> </msrow> <msrow> <mo> + </mo> <none/> <mn> 29 </mn> </msrow> <msline position="0" length="3"/> <msrow> <mn> 270 </mn> </msrow> </mstack> </mstyle> </math> Gregory ________________________________ From: neil.soiffer@gmail.com <neil.soiffer@gmail.com> on behalf of Neil Soiffer <NeilS@dessci.com> Sent: Thursday, June 26, 2014 7:03 PM To: David Carlisle Cc: Grégory Pakosz; www-math@w3.org Subject: Re: Questions about Elementary Math As noted, MathPlayer (which died at IE9 unless MS fixes a bug in enterprise mode -- enterprise mode was introduced a few months back), supports it. Along with MathPlayer, the MathFlow SDK tools (EquationComposer and DocumentComposer) also support it. That's where the rec's images came from. Neil On Wed, Jun 25, 2014 at 8:10 AM, David Carlisle <davidc@nag.co.uk<mailto:davidc@nag.co.uk>> wrote: On 24/06/2014 15:56, Grégory Pakosz wrote: Hello, I have two questions regarding elementary math as specified by MathML 3.0: 1) Is there a renderer out there that supports rendering additions, substractions, multiplications, and divisions with <mstack>, <mscarries>, and <mlongdiv> ? I failed to find one so far (downgrading IE to IE9 + installing a plugin isn't really future proof). Possibly currently only MathPlayer supports it natively, and as you indicate that is not available in current IE however it's possible to transform the markup to mathml2 for rendering in other clients. The MathJax "content mathml" extension and the firefox mathml-mml3ff addon both work by using some XSLT of mine to translate the markup to mathml2 mtable. https://code.google.com/p/web-xslt/source/browse/trunk/ctop Most of that content mathml to presentation transformation has also been re-encoded in javascript to avoid the XSLT stage (which is very slow in chrome) although not currently the elementary math part, that shouldn't be hard to add, given some time. 2) Despite being XML, <mstack> relies on children order instead of named elements like <dividend>, <divisor>, <quotient>. What's the rationale behind this choice? Positional children are used quite a lot in the mathml design: mfrac msub etc also do not have named arguments. Thanks you, Gregory David

Nevermind, I didn't reboot my Windows 7 + IE9 VM after having installed MathPlayer since instructions said I just had to relaunch IE. In any case, is there a way to adjust the position of the divisor and the quotient? My use case is the following: I recognize handwritten elementary math operations and I would like to position everything with respect to what's been written. In the screenshot attached, to achieve that, I would need to shift ":891 = 12" a bit to the left. Thanks. Gregory ________________________________ From: Grégory Pakosz Sent: Thursday, July 03, 2014 5:54 PM To: Neil Soiffer; David Carlisle Cc: www-math@w3.org Subject: RE: Questions about Elementary Math Neil, Thanks for the information. MathFlow tools are not downloadable for evaluation. That said, MathPlayer fails to render the following MathML, see screenshot attached. <math xmlns="http://www.w3.org/1998/Math/MathML"> <mstyle displaystyle="true"> <mstack stackalign="right"> <mscarries> <none/> <mn> 1 </mn> <none/> </mscarries> <msrow> <mn> 241 </mn> </msrow> <msrow> <mo> + </mo> <none/> <mn> 29 </mn> </msrow> <msline position="0" length="3"/> <msrow> <mn> 270 </mn> </msrow> </mstack> </mstyle> </math> Gregory ________________________________ From: neil.soiffer@gmail.com <neil.soiffer@gmail.com> on behalf of Neil Soiffer <NeilS@dessci.com> Sent: Thursday, June 26, 2014 7:03 PM To: David Carlisle Cc: Grégory Pakosz; www-math@w3.org Subject: Re: Questions about Elementary Math As noted, MathPlayer (which died at IE9 unless MS fixes a bug in enterprise mode -- enterprise mode was introduced a few months back), supports it. Along with MathPlayer, the MathFlow SDK tools (EquationComposer and DocumentComposer) also support it. That's where the rec's images came from. Neil On Wed, Jun 25, 2014 at 8:10 AM, David Carlisle <davidc@nag.co.uk<mailto:davidc@nag.co.uk>> wrote: On 24/06/2014 15:56, Grégory Pakosz wrote: Hello, I have two questions regarding elementary math as specified by MathML 3.0: 1) Is there a renderer out there that supports rendering additions, substractions, multiplications, and divisions with <mstack>, <mscarries>, and <mlongdiv> ? I failed to find one so far (downgrading IE to IE9 + installing a plugin isn't really future proof). Possibly currently only MathPlayer supports it natively, and as you indicate that is not available in current IE however it's possible to transform the markup to mathml2 for rendering in other clients. The MathJax "content mathml" extension and the firefox mathml-mml3ff addon both work by using some XSLT of mine to translate the markup to mathml2 mtable. https://code.google.com/p/web-xslt/source/browse/trunk/ctop Most of that content mathml to presentation transformation has also been re-encoded in javascript to avoid the XSLT stage (which is very slow in chrome) although not currently the elementary math part, that shouldn't be hard to add, given some time. 2) Despite being XML, <mstack> relies on children order instead of named elements like <dividend>, <divisor>, <quotient>. What's the rationale behind this choice? Positional children are used quite a lot in the mathml design: mfrac msub etc also do not have named arguments. Thanks you, Gregory David

You shouldn't have needed to reboot, but who knows what else was going on... A reboot never hurts :-) There's no way to adjust the position using mlongdiv attrs. I tried playing with mpadded, but because MathPlayer places the : and =, those tricks don't work. So I'm sorry to say there doesn't seem to be a way to change that. If you have suggestions for improving mlongdiv such as adding a tight=true/false for making the divisor tight against the dividend vs what MathPlayer currently does where it pushes it to the right of the "division stack" (my name -- maybe there's an official name for that). Of course, tight would only apply to those longdivstyles where it is sensible. I'm not saying that "tight" is the right attribute to add, but just throwing it out as a possibility. Neil On Thu, Jul 3, 2014 at 9:31 AM, Grégory Pakosz <gpakosz@myscript.com> wrote: > Nevermind, > > > I didn't reboot my Windows 7 + IE9 VM after having installed MathPlayer > since instructions said I just had to relaunch IE. > > > In any case, is there a way to adjust the position of the divisor and > the quotient? > > > My use case is the following: I recognize handwritten elementary math > operations and I would like to position everything with respect to what's > been written. In the screenshot attached, to achieve that, I would need to > shift ":891 = 12" a bit to the left. > > > Thanks. > > Gregory > > > ------------------------------ > *From:* Grégory Pakosz > *Sent:* Thursday, July 03, 2014 5:54 PM > *To:* Neil Soiffer; David Carlisle > *Cc:* www-math@w3.org > > *Subject:* RE: Questions about Elementary Math > > > Neil, > > > Thanks for the information. MathFlow tools are not downloadable for > evaluation. > > > That said, MathPlayer fails to render the following MathML, see > screenshot attached. > > > <math xmlns="http://www.w3.org/1998/Math/MathML"> > <mstyle displaystyle="true"> > <mstack stackalign="right"> > <mscarries> > <none/> > <mn> 1 </mn> > <none/> > </mscarries> > <msrow> > <mn> 241 </mn> > </msrow> > <msrow> > <mo> + </mo> > <none/> > <mn> 29 </mn> > </msrow> > <msline position="0" length="3"/> > <msrow> > <mn> 270 </mn> > </msrow> > </mstack> > </mstyle> > </math> > > > Gregory > > > ------------------------------ > *From:* neil.soiffer@gmail.com <neil.soiffer@gmail.com> on behalf of Neil > Soiffer <NeilS@dessci.com> > *Sent:* Thursday, June 26, 2014 7:03 PM > *To:* David Carlisle > *Cc:* Grégory Pakosz; www-math@w3.org > *Subject:* Re: Questions about Elementary Math > > As noted, MathPlayer (which died at IE9 unless MS fixes a bug in > enterprise mode -- enterprise mode was introduced a few months back), > supports it. Along with MathPlayer, the MathFlow SDK tools > (EquationComposer and DocumentComposer) also support it. That's where the > rec's images came from. > > Neil > > > > On Wed, Jun 25, 2014 at 8:10 AM, David Carlisle <davidc@nag.co.uk> wrote: > >> On 24/06/2014 15:56, Grégory Pakosz wrote: >> >> Hello, >> >> >> I have two questions regarding elementary math as specified by MathML >> 3.0: >> >> >> 1) Is there a renderer out there that supports rendering additions, >> substractions, multiplications, and divisions with <mstack>, <mscarries>, >> and <mlongdiv> ? I failed to find one so far (downgrading IE to IE9 + >> installing a plugin isn't really future proof). >> >> >> >> Possibly currently only MathPlayer supports it natively, and as you >> indicate that is not available in current IE >> however it's possible to transform the markup to mathml2 for rendering >> in other clients. >> >> The MathJax "content mathml" extension and the firefox mathml-mml3ff >> addon both work by using some XSLT of mine >> to translate the markup to mathml2 mtable. >> >> https://code.google.com/p/web-xslt/source/browse/trunk/ctop >> >> Most of that content mathml to presentation transformation has also been >> re-encoded in javascript to avoid the XSLT stage >> (which is very slow in chrome) although not currently the elementary math >> part, that shouldn't be hard to add, given some time. >> >> >> >> >> >> 2) Despite being XML, <mstack> relies on children order instead of >> named elements like <dividend>, <divisor>, <quotient>. What's the rationale >> behind this choice? >> >> >> >> Positional children are used quite a lot in the mathml design: mfrac >> msub etc also do not have named arguments. >> >> Thanks you, >> >> Gregory >> >> >> David >> >> >

Neil, In the screen shot attached of a Dutch division, maybe a position attribute on the quotient <msrow> would do the job. Reminder: this is a handwritten division recognized with our tech and I serialize the interpretation into MathML. I was able to generate a <msgroup> to properly align 345 with -42 (as written on paper). But the original ink shows that the \ sign is aligned with the 3 of 23 and the 3 of 345. Then, the 91 of 291 is aligned with the 45 of 345. Adding a <none/> before 291 AND having a position to offset the quotient would enable to achieve that alignement. But that's just reasoning on a single example... Not sure how well it generalizes. Regards, Gregory ________________________________ From: neil.soiffer@gmail.com <neil.soiffer@gmail.com> on behalf of Neil Soiffer <NeilS@dessci.com> Sent: Thursday, July 03, 2014 7:50 PM To: Grégory Pakosz Cc: Neil Soiffer; David Carlisle; www-math@w3.org Subject: Re: Questions about Elementary Math You shouldn't have needed to reboot, but who knows what else was going on... A reboot never hurts :-) There's no way to adjust the position using mlongdiv attrs. I tried playing with mpadded, but because MathPlayer places the : and =, those tricks don't work. So I'm sorry to say there doesn't seem to be a way to change that. If you have suggestions for improving mlongdiv such as adding a tight=true/false for making the divisor tight against the dividend vs what MathPlayer currently does where it pushes it to the right of the "division stack" (my name -- maybe there's an official name for that). Of course, tight would only apply to those longdivstyles where it is sensible. I'm not saying that "tight" is the right attribute to add, but just throwing it out as a possibility. Neil On Thu, Jul 3, 2014 at 9:31 AM, Grégory Pakosz <gpakosz@myscript.com<mailto:gpakosz@myscript.com>> wrote: Nevermind, I didn't reboot my Windows 7 + IE9 VM after having installed MathPlayer since instructions said I just had to relaunch IE. In any case, is there a way to adjust the position of the divisor and the quotient? My use case is the following: I recognize handwritten elementary math operations and I would like to position everything with respect to what's been written. In the screenshot attached, to achieve that, I would need to shift ":891 = 12" a bit to the left. Thanks. Gregory ________________________________ From: Grégory Pakosz Sent: Thursday, July 03, 2014 5:54 PM To: Neil Soiffer; David Carlisle Cc: www-math@w3.org<mailto:www-math@w3.org> Subject: RE: Questions about Elementary Math Neil, Thanks for the information. MathFlow tools are not downloadable for evaluation. That said, MathPlayer fails to render the following MathML, see screenshot attached. <math xmlns="http://www.w3.org/1998/Math/MathML"> <mstyle displaystyle="true"> <mstack stackalign="right"> <mscarries> <none/> <mn> 1 </mn> <none/> </mscarries> <msrow> <mn> 241 </mn> </msrow> <msrow> <mo> + </mo> <none/> <mn> 29 </mn> </msrow> <msline position="0" length="3"/> <msrow> <mn> 270 </mn> </msrow> </mstack> </mstyle> </math> Gregory ________________________________ From: neil.soiffer@gmail.com<mailto:neil.soiffer@gmail.com> <neil.soiffer@gmail.com<mailto:neil.soiffer@gmail.com>> on behalf of Neil Soiffer <NeilS@dessci.com<mailto:NeilS@dessci.com>> Sent: Thursday, June 26, 2014 7:03 PM To: David Carlisle Cc: Grégory Pakosz; www-math@w3.org<mailto:www-math@w3.org> Subject: Re: Questions about Elementary Math As noted, MathPlayer (which died at IE9 unless MS fixes a bug in enterprise mode -- enterprise mode was introduced a few months back), supports it. Along with MathPlayer, the MathFlow SDK tools (EquationComposer and DocumentComposer) also support it. That's where the rec's images came from. Neil On Wed, Jun 25, 2014 at 8:10 AM, David Carlisle <davidc@nag.co.uk<mailto:davidc@nag.co.uk>> wrote: On 24/06/2014 15:56, Grégory Pakosz wrote: Hello, I have two questions regarding elementary math as specified by MathML 3.0: 1) Is there a renderer out there that supports rendering additions, substractions, multiplications, and divisions with <mstack>, <mscarries>, and <mlongdiv> ? I failed to find one so far (downgrading IE to IE9 + installing a plugin isn't really future proof). Possibly currently only MathPlayer supports it natively, and as you indicate that is not available in current IE however it's possible to transform the markup to mathml2 for rendering in other clients. The MathJax "content mathml" extension and the firefox mathml-mml3ff addon both work by using some XSLT of mine to translate the markup to mathml2 mtable. https://code.google.com/p/web-xslt/source/browse/trunk/ctop Most of that content mathml to presentation transformation has also been re-encoded in javascript to avoid the XSLT stage (which is very slow in chrome) although not currently the elementary math part, that shouldn't be hard to add, given some time. 2) Despite being XML, <mstack> relies on children order instead of named elements like <dividend>, <divisor>, <quotient>. What's the rationale behind this choice? Positional children are used quite a lot in the mathml design: mfrac msub etc also do not have named arguments. Thanks you, Gregory David

On 05/07/2014 22:45, William F Hammond wrote: > > Not that you asked, but your original addition example > can be rendered using only CSS (no scripting): > > http://www.albany.edu/~hammond/demos/purecss/mstackfs.html > > > -- Bill > > Sure, similar CSS rules are given in http://www.w3.org/TR/mathml-for-css/#mstack but the mathml css profile has to have so many restrictions on the input for it to work it really doesn't scale well. Using newer css notably flexbox you could probably do a bit more in browsers that support it but still the preferred result is that browsers implement mathml natively, we are not there yet for all browsers as you know, but these things take time... David

I appreciate the input. But I'm not really interested in rendering MathML per se, be it with the help of CSS or any other "hack". In the context of handwriting recognition, what I want is to get a sense of which MathML markup I should produce that could be consumed by any renderer and achieves alignment similar to what's been written. I attached yet another screenshot in which you can see a handwritten long division in the center, on the left is a LaTeX render achieved using array and on the right is the MathML markup I'm generating so far. As you can see, the fact that the decimal dot takes a column makes me insert <none/> elements to keep things aligned. Gregory ________________________________________ From: William F Hammond <hammond@csc.albany.edu> Sent: Saturday, July 05, 2014 11:45 PM To: Grégory Pakosz Cc: Neil Soiffer; www-math@w3.org Subject: Re: Questions about Elementary Math Not that you asked, but your original addition example can be rendered using only CSS (no scripting): http://www.albany.edu/~hammond/demos/purecss/mstackfs.html -- Bill

Le 22/06/2014 19:31, David Carlisle a écrit : > > If you don't follow updates to the unicode.xml file used as the source > for entity definitions in mathml and html > skip this message:-) > > Christian's recent questions about unicode.xml (and some recent bug > reports about unicode-math latex package) > prompted me to look again at the tex mappings in unicode.xml. > > The existing ones were mostly speculative assignments dating from the > 1990's some years before the bulk of > math characters were added to Unicode. > > I have extended the schema to allow multiple <latex> and <mathlatex> > elements so the file can track different mappings, > and added a set attribute do distinguish these. So that now for > example there are entries such as > > <mathlatex set="unicode-math">\rightarrow</mathlatex> > > for U+"2192" . > > This mathlatex set="unicode-math" set is mechanically extracted from > the source of the unicode-math package > (the principle method for using unicode math fonts with xelatex and > lualatex) > https://github.com/wspr/unicode-math/blob/master/unicode-math-table.tex > > So, while I'm not sure I like all the mappings here they correspond to > running TeX code which is a definite improvement > over the previous ones. > > Frédéric Wang reported some problems with the TeX mappings a while > back I haven't fixed those yet, I may just remove them > in favour of this new set, or perhaps this set and a set derived from > a package for classic TeX (amssymb or stix-latex) > comments welcome on the best plan of action here.... As I recall, the last time I checked unicode.xml, there were several sets with different mappings (AMS, IIEE etc) and some of them clearly had mistakes, so that was a bit messy. Personally, I don't mind dropping the old TeX mappings as long as a clear list of TeX mapping for math char commands is provided, on which one can rely on. -- Frédéric Wang maths-informatique-jeux.com/blog/frederic

On 02/07/2014 16:22, Frédéric WANG wrote: > As I recall, the last time I checked unicode.xml, there were several > sets with different mappings (AMS, IIEE etc) and some of them clearly > had mistakes, so that was a bit messy. Yes but (unless I broke them) the "publisher" entries in the file are historical data relating to publishers internal character tables as input data to forming the stix submission to unicode so I'm not sure I can change them now (but on the other hand they are not really that useful to anyone apart from historians:-) > Personally, I don't mind dropping the old TeX mappings as long as a > clear list of TeX mapping for math char commands is provided, on which > one can rely on. Yes I think I'm going to drop the "nameless" <latex> entries and try to maintain entries like the new ones that specifically reference a latex package such as unicode-math so that if you load that package (or say you are emulating that package) the names should work (even if one can argue about the actual names) David

David, On 7/2/14 11:38 AM, David Carlisle wrote: > On 02/07/2014 16:22, Frédéric WANG wrote: >> As I recall, the last time I checked unicode.xml, there were several >> sets with different mappings (AMS, IIEE etc) and some of them clearly >> had mistakes, so that was a bit messy. > > Yes but (unless I broke them) the "publisher" entries in the file are > historical data relating to publishers internal character tables as > input data to forming > the stix submission to unicode so I'm not sure I can change them now > (but on the other hand they are not really that useful to anyone apart > from historians:-) > It's a fine contribution to get labelled definite mappings into unicode.xml, and of course to check them. We must all be very grateful for your doing that. > >> Personally, I don't mind dropping the old TeX mappings as long as a >> clear list of TeX mapping for math char commands is provided, on >> which one can rely on. > > Yes I think I'm going to drop the "nameless" <latex> entries and try > to maintain entries like the new ones that specifically reference a > latex package such as > unicode-math so that if you load that package (or say you are > emulating that package) the names should work (even if one can argue > about the actual names) > I would urge you to change the "nameless" <latex> entries to a 'set="latex-historical">' at least so as not to lose the record of where people may have got their authoritative info. That seems to me no particular overhead and may clarify bugs reported later. Those only concerned to be up-to-date can ignore that info as they will all sorts of other material. Presumably names can be reported as occurring in several sets (packages). All the best, Patrick > David > > -- Associate Editor Emeritus, Mathematical Reviews [1] 734-769-2015 <ion@ams.org> Mathematical Reviews (MR) <http://www.ams.org/mr-database/> <http://www.ams.org/publications/60ann/AnniversaryYear.html> University of Michigan [mailto:p@u.edu where p=pion and u=umich] <http://www-personal.umich.edu/~pion/> Geometry and DFT <http://www.ams.org/samplings/feature-column/fcarc-geo-dft> W3C Math Working Group Co-Chair <http://www.w3.org/Math/> MathML3 <http://www.w3.org/TR/MathML3/> XML Entity Definitions for Characters <http://www.w3.org/TR/xml-entity-names/> MathML for CSS Profile <http://www.w3.org/TR/mathml-for-css/> Math on the Web pages <http://www.mathontheweb.org/> (replacing http://www.ams.org/mathweb/) MSC2010 Revision <http://msc2010.org/> MSC2010 as SKOS <http://msc2010.org/resources/MSC/2010/info/> MSC2010 as a TiddlyWiki <http://msc2010.org/MSC-2010-server.html> GLC NARGS <http://glcnargs.com>

On 03/07/2014 13:49, Patrick Ion wrote: > I would urge you to change the "nameless" <latex> entries to a > 'set="latex-historical">' at least so as not to lose the record of > where people may have got their authoritative info yes but then I should fix them to be right (not with obvious typos such as Frédéric reported:-) Ok will do something like that... David

On 7/3/14 9:31 AM, David Carlisle wrote: > On 03/07/2014 13:49, Patrick Ion wrote: >> I would urge you to change the "nameless" <latex> entries to a >> 'set="latex-historical">' at least so as not to lose the record of >> where people may have got their authoritative info > > > yes but then I should fix them to be right (not with obvious typos > such as > Frédéric reported:-) > > Ok will do something like that... > > David The trouble is that, in some sense, it's useful to know what the long persistent typo was---at least sometimes. Essentially that's why I'm advocating keeping the historical, and maybe superseded, information about, but clearly labelled. The correction presumably follows implicitly if one uses a good 'current' set as basis in an application. That's what 'good current' is supposed to mean and a motivation for developers keeping up-to-date. Patrick P.S. You may recollect that it was clear that the early SGML names from a report by American publishers, that went on into ISO12083, could be seen to be lifted without attribution from casual advertising of TeX names put out by the AMS because they reproduced the typos in that list.

On 03/07/2014 14:49, Patrick Ion wrote: > P.S. You may recollect that it was clear that the early SGML > names from a report by American publishers, that went on > into ISO12083, could be seen to be lifted without attribution > from casual advertising of TeX names put out by the AMS > because they reproduced the typos in that list. Oh Ok that's simpler: don't fix the names in the file just mark then as set="historical" OK good plan! David