Non-MathML ElementsNon-MathML elements are valid markup which can be found anywhere within MathML elements but do not belong to the MathML standard. There are three different types of non-MathML elements you can use in the MathFlow Editor:
Previously, the MathFlow parser would strip non-MathML elements from an equation and discard them. These elements are now retained. Here is a sample MathML equation containing each element listed above:
The element <?foo?> is called a processing instruction, where "foo" can be additional information that can be used to display the content in a way that is user-specific. The element <!--comment--!> is a standard XML comment. The element <atag/> is a valid XML element where "atag" is the element name. This could also be of the form <atag></atag>, where the text between those two tags could be anything (including MathML elements).
MathFlow Editor includes an option called safe mode that prevents the user from accidentally changing non-MathML elements contained within an equation. When safe mode is engaged for a given type of non-MathML, the Design View within the editor will display non-MathML as a downward pointing triangle within token elements (such as mi, mn, mtext) and container elements (such as mrow and mstyle). The editor will also prevent certain actions from occurring, such as deleting portions of an equation that contain non-MathML elements. Depending on the circumstances, you will either be warned of the presence of non-MathML elements in the status line or prompted for permission to delete the non-MathML elements. When you disable safe mode for any type of non-MathML element, you will not see the non-MathML element in Design View, nor will you be prompted or warned when deleting the non-MathML element. Disabling safe mode will be useful for experienced users who are aware of the presence of non-MathML elements and do not need the additional safety provided by this mode. To illustrate what non-MathML looks like in Design View, consider the following MathML:
Notice that there are four processing instructions surrounding the letters "abc", plus the two comments that are to the far left and right of the letters. Viewing this equation in Design View will show red markers above the content at the location of the non-MathML elements as seen here.
Since the comments were placed inside the container element mrow, these triangles are slightly lower than the processing instructions that are contained within the mi. This may be helpful in determining where the non-MathML elements reside. You can also determine what the contents of the non-MathML element are by moving your cursor over the triangle, which will cause the status line to display as much of the non-MathML element as possible. Non-MathML that is not within a token or container element is displayed as an upward facing triangle just below the current cursor position. Examples of this are shown under "Cursor Embellishment for Non-MathML Elements" in Cursor Shapes. While it is useful to enable safe mode to display non-MathML in token and container elements, it is possible to turn off portions of safe mode or to turn it off entirely. For full details, see Customizing Editing Behavior. By default, MathFlow will warn you when the equation contains non-MathML by displaying a dialog box. This is done whenever there are major changes to the equation such as doing the following:
Since this warning can become tedious, you have the option to disable it. This can be done from within the warning dialog box by checking the "Don't show this dialog again" checkbox.
It is also possible to disable the warning through General Editing Preferences. See Customizing Editing Behavior. | ||||
Copyright © 1996-2013 Design Science, Inc. All rights reserved. |