Overview: Mathematical Markup Language (MathML) Version 2.0
Previous: C Content Element Definitions
Next: E MathML Document Object Model Bindings (Non-normative)
D Document Object Model for MathML
D.1 IDL Interfaces
D.1.1 Miscellaneous Object Definitions
D.1.1.1 MathMLDOMImplementation
D.1.1.2 MathMLDocument
D.1.1.3 MathMLNodeList
D.1.2 Generic MathML Elements
D.1.2.1 MathMLElement
D.1.2.2 MathMLContainer
D.1.2.3 MathMLMathElement
D.1.2.4 MathMLSemanticsElement
D.1.2.5 MathMLAnnotationElement
D.1.2.6 MathMLXMLAnnotationElement
D.1.3 Presentation Elements
D.1.3.1 MathMLPresentationElement
D.1.3.1 Leaf Presentation Element Interfaces
D.1.3.1.1 MathMLGlyphElement
D.1.3.1.2 MathMLSpaceElement
D.1.3.2 Presentation Token Element Interfaces
D.1.3.2.1 MathMLPresentationToken
D.1.3.2.2 MathMLOperatorElement
D.1.3.2.3 MathMLStringLitElement
D.1.3.3 Presentation Container Interfaces
D.1.3.3.1 MathMLPresentationContainer
D.1.3.3.2 MathMLStyleElement
D.1.3.3.3 MathMLPaddedElement
D.1.3.3.4 MathMLFencedElement
D.1.3.3.5 MathMLEncloseElement
D.1.3.3.6 MathMLActionElement
D.1.3.4 Presentation Schemata Interfaces
D.1.3.4.1 MathMLFractionElement
D.1.3.4.2 MathMLRadicalElement
D.1.3.4.3 MathMLScriptElement
D.1.3.4.4 MathMLUnderOverElement
D.1.3.4.5 MathMLMultiScriptsElement
D.1.3.4.6 MathMLTableElement
D.1.3.4.7 MathMLTableRowElement
D.1.3.4.8 MathMLLabeledRowElement
D.1.3.4.9 MathMLTableCellElement
D.1.3.4.10 MathMLAlignGroupElement
D.1.3.4.11 MathMLAlignMarkElement
D.1.4 Content Elements
D.1.4.1 MathMLContentElement
D.1.4.1 Content Token Interfaces
D.1.4.1.1 MathMLContentToken
D.1.4.1.2 MathMLCnElement
D.1.4.1.3 MathMLCiElement
D.1.4.1.4 MathMLCsymbolElement
D.1.4.2 Content Container Interfaces
D.1.4.2.1 MathMLContentContainer
D.1.4.2.2 MathMLApplyElement
D.1.4.2.3 MathMLFnElement
D.1.4.2.4 MathMLLambdaElement
D.1.4.2.5 MathMLSetElement
D.1.4.2.6 MathMLListElement
D.1.4.2.7 MathMLBvarElement
D.1.4.3 Content Leaf Element Interfaces
D.1.4.3.1 MathMLPredefinedSymbol
D.1.4.4 Other Content Element Interfaces
D.1.4.4.1 MathMLIntervalElement
D.1.4.4.2 MathMLConditionElement
D.1.4.4.3 MathMLDeclareElement
D.1.4.4.4 MathMLVectorElement
D.1.4.4.5 MathMLMatrixElement
D.1.4.4.6 MathMLMatrixrowElement
D.1.4.4.7 MathMLPiecewiseElement
D.1.4.4.8 MathMLCaseElement
D.2 MathML DOM Tables
D.2.1 Chart of MathML DOM Inheritance
D.2.2 Table of Elements and MathML DOM Representations
The following sections describe the interfaces that have been defined in the Document Object Model for MathML. Please refer to Chapter 8 [Document Object Model for MathML] for more information.
Bindings for IDL, Java and ECMAScript are located in Appendix E [MathML Document Object Model Bindings].
Extends:
DOMImplementation
This interface extends the DOMImplementation
interface by adding a method to create a MathMLDocument
.
IDL Definition
interface MathMLDOMImplementation: DOMImplementation { MathMLDocument createMathMLDocument(); MathMLMathElement createMathMLMathElement(in Document hostDocument); };
Methods
createMathMLDocument
Creates a MathMLDocument
with a minimal tree
containing only a MathMLMathElement
corresponding to a MathML math
element. The MathMLMathElement
is empty, having no child elements or non-default attributes; it is the
root element of the document, and is the element accessed via the documentElement
attribute of
the MathMLDocument
. Note that a MathMLDocument
object should only be created for a
stand-alone MathML document.
Return value
MathMLDocument |
The |
This method raises no exceptions.
createMathMLMathElement
Creates a MathMLMathElement
to correspond to a top-level math
element in a non-MathML host document. The MathMLMathElement
is empty, having no child elements or non-default
attributes. This creation method is intended to be used to allow `bootstrapping'
the creation of MathML DOM interfaces in a non-MathML host document.
Parameters
Document | hostDocument |
A |
Return value
MathMLMathElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if a math
element is
not allowed in the host document.
Extends:
Document
This interface extends the Document
interface to
add access to document properties relating to navigation. The documentElement
attribute for a MathMLDocument
should be the MathMLMathElement
representing the top-level math
element
which is the root of the document.
IDL Definition
interface MathMLDocument: Document { readonly attribute DOMString referrer; readonly attribute DOMString domain; readonly attribute DOMString URI; };
Attributes
referrer
of type
DOMString
, readonlyThe URI of the page that linked to this document, if
available. This is null
if the user navigated directly to the page. If this
is not a stand-alone MathML document (e.g. is embedded in an XHTML document), this
may be retrieved from the parent Document
if available.
domain
of type
DOMString
, readonlyThe domain name of the server that served the document,
or null
if the server cannot be identified by a domain name, or if it is not
available. If this is not a stand-alone MathML document (e.g. is embedded in an XHTML document),
this may be retrieved from the parent Document
if available.
URI
of type
DOMString
, readonlyThe complete URI of this document. This is null
if this is not a stand-alone MathML document.
Extends:
NodeList
This interface is provided as a specialization of the NodeList
interface.
The child Nodes
of this NodeList
must be MathMLElements
or Text
nodes.
Note that MathMLNodeLists
are frequently used in the
DOM as values of readonly attributes
, encapsulating, for instance,
various collections of child elements. When used in this way, these objects
are always understood to be live, in the sense that changes
to the document are immediately reflected in them.
IDL Definition
interface MathMLNodeList: NodeList { };
Extends:
Element
All MathML element interfaces derive from this object, which
derives from the basic DOM interface Element
.
IDL Definition
interface MathMLElement: Element { attribute DOMString className; attribute DOMString mathElementStyle; attribute DOMString id; attribute DOMString xref; attribute DOMString href; readonly attribute MathMLMathElement ownerMathElement; };
Attributes
className
of type
DOMString
The class
attribute of the element. See
the discussion elsewhere in this document of the class
attribute; see also the
HTML definition of this attribute.
mathElementStyle
of type
DOMString
A string identifying the element's style
attribute.
id
of type
DOMString
The element's identifier. See the discussion elsewhere in this
document of the id
attribute; see also the HTML definition.
xref
of type
DOMString
The xref
attribute of the element. See
the discussion elsewhere in this document of the xref
attribute.
href
of type
DOMString
The xlink:href
attribute of the element. See
the discussion elsewhere in this document of the xlink:href
attribute; see also the
definition of this attribute in the
XLink specification.
ownerMathElement
of type
MathMLMathElement
, readonlyThe MathMLMathElement
corresponding to the nearest
math
element ancestor of this element. Should be null
if this element is a top-level math
element.
This is an abstract interface containing functionality required by MathML elements
that may contain arbitarily many child elements. No elements are directly supported by this interface;
all instances are instances of either MathMLPresentationContainer
, MathMLContentContainer
,
or MathMLMathElement
.
IDL Definition
interface MathMLContainer { readonly attribute unsigned long nArguments; readonly attribute MathMLNodeList arguments; readonly attribute MathMLNodeList declarations; MathMLElement getArgument(in unsigned long index); MathMLElement setArgument(in MathMLElement newArgument, in unsigned long index); MathMLElement insertArgument(in MathMLElement newArgument, in unsigned long index); void deleteArgument(in unsigned long index); MathMLElement removeArgument(in unsigned long index); MathMLDeclareElement getDeclaration(in unsigned long index); MathMLDeclareElement setDeclaration(in MathMLDeclareElement newDeclaration, in unsigned long index); MathMLDeclareElement insertDeclaration(in MathMLDeclareElement newDeclaration, in unsigned long index); MathMLDeclareElement removeDeclaration(in unsigned long index); void deleteDeclaration(in unsigned long index); };
Attributes
nArguments
of type
unsigned long
, readonlyThe number of child elements of this element
which represent arguments of the element, as opposed to qualifiers or declare
elements.
Thus for a MathMLContentContainer
it does not contain elements representing bound variables, conditions,
separators, degrees, or upper or lower limits (bvar
,
condition
, sep
,
degree
, lowlimit
,
or uplimit
).
arguments
of type
MathMLNodeList
, readonlyThis attribute accesses the child MathMLElements
of
this element which are arguments of it, as a MathMLNodeList
. Note that this list does not
contain any MathMLElements
representing qualifier elements or declare
elements.
declarations
of type
MathMLNodeList
, readonlyProvides access to the declare
elements
which are children of this element, in a MathMLNodeList
. All
Nodes
in this list must be MathMLDeclareElements
.
Methods
getArgument
This method returns the index
th child argument element of this
element. This frequently differs from the value of Node::childNodes().item(index)
,
as qualifier elements and declare
elements are not counted.
Parameters
unsigned long | index |
The one-based index of the argument to be retrieved. |
Return value
MathMLElement |
A |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of child elements.
setArgument
This method sets newArgument
as the
index
-th argument of this element. If there is currently an
index
-th argument, it is replaced by newArgument
.
This frequently differs from setting the node at Node::childNodes().item(index)
,
as qualifier elements and declare
elements are not counted.
Parameters
MathMLElement | newArgument |
A |
unsigned long | index |
The index of the argument that is to be set to
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
element of the type of newArgument
, if this is a MathMLContentContainer
and newArgument
is a qualifier element, or if newElement
is a MathMLDeclareElement
.
INDEX_SIZE_ERR: Raised if index
is greater than one more than the number
of child elements.
insertArgument
This method inserts newArgument
before the
current index
-th argument of this element. If index
is 0, or if
index
is one more than the current number of arguments, newArgument
is
appended as the last argument. This frequently differs from setting the node at
Node::childNodes().item(index)
, as qualifier elements and declare
elements are not counted.
Parameters
MathMLElement | newArgument |
A |
unsigned long | index |
The one-based index of the position before
which |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
argument of the type of newArgument
, or, for MathMLContentContainers
, if newArgument
represents a qualifier element.
INDEX_SIZE_ERR: Raised if index
is greater than one more than the number of child
arguments.
deleteArgument
This method deletes the index
-th
child element that is an argument of this element. Note that child elements
which are qualifier elements or declare
elements are not counted
in determining the index
-th argument.
Parameters
unsigned long | index |
The one-based index of the argument to be deleted. |
Return value
void |
None. |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of child elements.
removeArgument
This method deletes the index
-th
child element that is an argument of this element, and returns it to the caller.
Note that child elements that are qualifier elements or declare
elements are not counted in determining the index
-th argument.
Parameters
unsigned long | index |
The one-based index of the argument to be removed. |
Return value
MathMLElement |
A |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of child elements.
getDeclaration
This method retrieves the index
-th child
declare
element of this element.
Parameters
unsigned long | index |
A one-based index into the list of
child |
Return value
MathMLDeclareElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
the number of child declare
elements.
setDeclaration
This method inserts newDeclaration
as the index
-th
child declaration of this element. If there is already an index
-th
declare
child element, it is replaced by
newDeclaration
.
Parameters
MathMLDeclareElement | newDeclaration |
A |
unsigned long | index |
A one-based index into the list of
child |
Return value
MathMLDeclareElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
one more than the number of child declare
elements.
insertDeclaration
This method inserts newDeclaration
before the current index
-th child declare
element of this element. If index
is 0, newDeclaration
is appended
as the last child declare
element.
Parameters
MathMLDeclareElement | newDeclaration |
A |
unsigned long | index |
A one-based index into the list of
child |
Return value
MathMLDeclareElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the number of child declare
elements.
removeDeclaration
This method removes the MathMLDeclareElement
representing
the index
-th declare
child element of
this element, and returns it to the caller. Note that index
is the position in the list of declare
element children,
as opposed to the position in the list of all child Nodes
.
Parameters
unsigned long | index |
The one-based index of the |
Return value
MathMLDeclareElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
the number of child declare
elements.
deleteDeclaration
This method deletes the MathMLDeclareElement
representing
the index
-th declare
child element of
this element. Note that index
is the position in the list of declare
element children, as opposed to the position in the list of all child Nodes
.
Parameters
unsigned long | index |
The one-based index of the |
Return value
void |
None. |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
the number of child declare
elements.
Extends:
MathMLElement
, MathMLContainer
This interface represents the top-level MathML math
element. It may be useful for interfacing between the Document Object Model objects
encoding an enclosing document and the MathML DOM elements that are its children.
It may also be used for some purposes as a MathML DOM surrogate for a Document object. For instance, MathML-specific factory methods could be placed here, as could methods for creating MathML-specific Iterators
or TreeWalkers
.
IDL Definition
interface MathMLMathElement: MathMLElement, MathMLContainer { attribute DOMString macros; attribute DOMString display; MathMLElement createMathMLElement(in DOMString tagName); };
Attributes
macros
of type
DOMString
Represents the macros
attribute of the math
element. See
Section 7.1.2 [The Top-Level
math
Element].
display
of type
DOMString
Represents the display
attribute of the math
element. This value is either
block
or inline
. See
Section 7.1.2 [The Top-Level
math
Element].
Methods
createMathMLElement
This method creates a MathMLElement
to represent a MathML element of type tagName
. The returned
MathMLElement
should be of the correct derived type to represent
the element.
In addition, if there are known attributes with default values, Attr
nodes representing them are automatically created and attached to the
element. MathMLElements
representing required child elements are
created as empty elements.
Parameters
DOMString | tagName |
The case-sensitive name of the element type to instantiate. |
Return value
MathMLElement |
The |
Exceptions
DOMException
INVALID_CHARACTER_ERR: Raised if tagName
contains
an illegal character.
DOMException
NOT_SUPPORTED_ERR: Raised if tagName
is not the name
of a recognized MathML element.
Extends:
MathMLElement
This interface represents the semantics
element in MathML.
IDL Definition
interface MathMLSemanticsElement: MathMLElement { attribute MathMLElement body; readonly attribute unsigned long nAnnotations; MathMLElement getAnnotation(in unsigned long index); MathMLElement insertAnnotation(in MathMLElement newAnnotation, in unsigned long index); MathMLElement setAnnotation(in MathMLElement newAnnotation, in unsigned long index); void deleteAnnotation(in unsigned long index); MathMLElement removeAnnotation(in unsigned long index); };
Attributes
body
of type
MathMLElement
This attribute represents the first child of the semantics
element, i.e. the child giving the
`primary' content represented by the element.
nAnnotations
of type
unsigned long
, readonlyRepresents the number of annotation
or annotation-xml
children of
the semantics
element, i.e. the number of alternate content forms
for this element.
Methods
getAnnotation
This method gives access to the index
-th
`alternate' content associated with a
semantics
element.
Parameters
unsigned long | index |
The one-based index of the annotation being retrieved. |
Return value
MathMLElement |
The |
This method raises no exceptions.
insertAnnotation
This method inserts newAnnotation
before
the current index
-th `alternate' content associated
with a semantics
element. If index
is 0,
newAnnotation
is appended as the last annotation
or annotation-xml
child of this element.
Parameters
MathMLElement | newAnnotation |
A |
unsigned long | index |
The position in the list of |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newAnnotation
is not a
MathMLAnnotationElement
or MathMLXMLAnnotationElement
.
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of annotation
or
annotation-xml
children of this
semantics
element.
setAnnotation
This method allows setting or replacement of the
index
-th `alternate' content associated with a
semantics
element. If there is already an
annotation
or annotation-xml
element with this index, it is replaced by newAnnotation
.
Parameters
MathMLElement | newAnnotation |
A |
unsigned long | index |
The position in the list of
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newAnnotation
is not a
MathMLAnnotationElement
or MathMLXMLAnnotationElement
.
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the current number of annotation
or annotation-xml
children of this
semantics
element.
deleteAnnotation
A convenience method to delete the index
-th
`alternate' content associated with this
semantics
element.
Parameters
unsigned long | index |
The one-based index of the annotation being deleted. |
Return value
void |
None. |
This method raises no exceptions.
removeAnnotation
A convenience method to delete the index
-th
`alternate' content associated with this
semantics
element, and to return it to the caller.
Parameters
unsigned long | index |
The one-based index of the annotation being deleted. |
Return value
MathMLElement |
The |
This method raises no exceptions.
Extends:
MathMLElement
This interface represents the annotation
element of MathML.
IDL Definition
interface MathMLAnnotationElement: MathMLElement { attribute DOMString body; attribute DOMString encoding; };
Attributes
body
of type
DOMString
Provides access to the content of an annotation
element.
encoding
of type
DOMString
Provides access to the encoding
attribute of an annotation
element.
Extends:
MathMLElement
This interface represents the annotation-xml
element of MathML.
IDL Definition
interface MathMLXMLAnnotationElement: MathMLElement { attribute DOMString encoding; };
Attributes
encoding
of type
DOMString
Provides access to the encoding
attribute of an xml-annotation
element.
Extends:
MathMLElement
This interface is provided to serve as a base interface for various MathML Presentation interfaces. It contains no new attributes or methods at this time; however, it is felt that the distinction between Presentation and Content MathML entities should be indicated in the MathMLElement hierarchy. In particular, future versions of the MathML DOM may add functionality on this interface; it may also serve as an aid to implementors.
IDL Definition
interface MathMLPresentationElement: MathMLElement { };
Extends:
MathMLPresentationElement
This interface supports the mglyph
element
Section 3.2.9 [Adding new character glyphs to MathML
(mglyph
)].
IDL Definition
interface MathMLGlyphElement: MathMLPresentationElement { attribute DOMString alt; attribute DOMString fontfamily; attribute unsigned long index; };
Attributes
alt
of type
DOMString
A string giving an alternate name for the character. Represents
the mglyph
's alt
attribute.
fontfamily
of type
DOMString
A string representing the font family.
index
of type
unsigned long
An unsigned integer giving the glyph's position within the font.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for the MathML space element mspace
.
Note that this is not derived from MathMLPresentationToken
,
despite the fact that mspace
is classified as a token element,
since it does not carry the attributes declared for
MathMLPresentationToken
.
IDL Definition
interface MathMLSpaceElement: MathMLPresentationElement { attribute DOMString width; attribute DOMString height; attribute DOMString depth; };
Attributes
width
of type
DOMString
A string of the form `number
h-unit'; represents the width
attribute for the mspace
element, if specified.
height
of type
DOMString
A string of the form `number
v-unit'; represents the height
attribute for the mspace
element, if specified.
depth
of type
DOMString
A string of the form `number
v-unit'; represents the depth
attribute for the mspace
element, if specified.
Interfaces representing the MathML Presentation token elements that may have content are described here.
Extends:
MathMLPresentationElement
This interface extends the MathMLElement
interface to
include access for attributes specific to text presentation. It serves as
the base class for all MathML presentation token elements. Access to the
body of the element is via the nodeValue
attribute
inherited from Node
. Elements that expose only the core presentation
token attributes are directly supported by this object. These elements are:
mi
mn
mtext
IDL Definition
interface MathMLPresentationToken: MathMLPresentationElement { attribute DOMString mathvariant; attribute DOMString mathsize; attribute DOMString mathfamily; attribute DOMString mathcolor; attribute DOMString mathbackground; readonly attribute MathMLNodeList contents; };
Attributes
mathvariant
of type
DOMString
The mathvariant
attribute for the element, if
specified. One of the values normal
, bold
, italic
, bold-italic
, double-struck
, bold-fraktur
,
script
, bold-script
, fraktur
, sans-serif
, bold-sans-serif
, sans-serif-italic
, sans-serif-bold-italic
,
or monospace
.
mathsize
of type
DOMString
The mathsize
attribute for the element, if
specified. Either small
, normal
or big
, or of the
form number v-unit
.
mathfamily
of type
DOMString
The mathfamily
attribute for the element, if
specified. This should be a string of the form css-fontfamily
.
mathcolor
of type
DOMString
The mathcolor
attribute for the element, if
specified. The DOMString
returned should be in the form of a CSS color spec.
mathbackground
of type
DOMString
The mathbackground
attribute for the element, if
specified. The DOMString
returned should be in the form of a CSS color spec.
contents
of type
MathMLNodeList
, readonlyReturns the child Nodes
of the
element. These should consist only of Text
nodes and possibly
MathMLGlyphElements
. Should behave the same as the base class's
Node::childNodes
attribute; however, it is provided here for clarity.
Extends:
MathMLPresentationToken
This interface extends the MathMLPresentationToken
interface for the MathML operator element mo
.
IDL Definition
interface MathMLOperatorElement: MathMLPresentationToken { attribute DOMString form; attribute DOMString fence; attribute DOMString separator; attribute DOMString lspace; attribute DOMString rspace; attribute DOMString stretchy; attribute DOMString symmetric; attribute DOMString maxsize; attribute DOMString minsize; attribute DOMString largeop; attribute DOMString moveablelimits; attribute DOMString accent; };
Attributes
form
of type
DOMString
The form
attribute (prefix
,
infix
or postfix
) for the
mo
element, if specified.
fence
of type
DOMString
The fence
attribute
(true
or false
)
for the mo
element, if specified.
separator
of type
DOMString
The separator
attribute
(true
or false
) for the
mo
element, if specified.
lspace
of type
DOMString
The lspace
attribute (spacing to left) of
the mo
element, if specified.
rspace
of type
DOMString
The rspace
attribute (spacing to right) of the
mo
element, if specified.
stretchy
of type
DOMString
The stretchy
attribute
(true
or false
) for the
mo
element, if specified.
symmetric
of type
DOMString
The symmetric
attribute
(true
or false
) for the
mo
element, if specified.
maxsize
of type
DOMString
The maxsize
attribute for the
mo
element, if specified.
minsize
of type
DOMString
The minsize
attribute for the
mo
element, if specified.
largeop
of type
DOMString
The largeop
attribute for the
mo
element, if specified.
moveablelimits
of type
DOMString
The moveablelimits
(true
or false
) attribute for the
mo
element, if specified.
accent
of type
DOMString
The accent
attribute
(true
or false
) for the
mo
element, if specified.
Extends:
MathMLPresentationToken
This interface extends the MathMLPresentationToken
interface for the MathML string literal element
ms
.
IDL Definition
interface MathMLStringLitElement: MathMLPresentationToken { attribute DOMString lquote; attribute DOMString rquote; };
Attributes
lquote
of type
DOMString
A string giving the opening delimiter for the string literal;
represents the lquote
attribute for the
ms
element, if specified.
rquote
of type
DOMString
A string giving the closing delimiter for the string literal;
represents the rquote
attribute for the
ms
element, if specified.
Interfaces designed to represent MathML Presentation elements that can contain
arbitrary numbers of child MathMLElements
are included under the heading
of Presentation Container Elements.
Extends:
MathMLPresentationElement
, MathMLContainer
This interface represents MathML Presentation elements that may
contain arbitarily many child elements. Elements directly supported by this interface
include mrow
, mphantom
and merror
.
All attributes and methods are derived from the base MathMLPresentationElement
and MathMLContainer
interfaces.
IDL Definition
interface MathMLPresentationContainer: MathMLPresentationElement, MathMLContainer { };
Extends:
MathMLPresentationContainer
This interface extends the MathMLElement
interface for
the MathML style element mstyle
.
While the mstyle
element may contain any
attributes allowable on any MathML presentation element, only
attributes specific to the mstyle
element are included in the interface below. Other attributes should be
accessed using the methods on the base Element
class, particularly
the Element::getAttribute
and Element::setAttribute
methods, or even the Node::attributes
attribute to access all of
them at once. Not only does this obviate a lengthy list below, but it seems
likely that most implementations will find this a considerably more useful
interface to a MathMLStyleElement
.
IDL Definition
interface MathMLStyleElement: MathMLPresentationContainer { attribute DOMString scriptlevel; attribute DOMString displaystyle; attribute DOMString scriptsizemultiplier; attribute DOMString scriptminsize; attribute DOMString color; attribute DOMString background; };
Attributes
scriptlevel
of type
DOMString
A string of the form `+/- unsigned
integer'; represents the scriptlevel
attribute for the mstyle
element, if specified. See
also the discussion of this attribute.
displaystyle
of type
DOMString
Either true
or false
;
a string representing the displaystyle
attribute for the
mstyle
element, if specified. See also the discussion
of this attribute.
scriptsizemultiplier
of type
DOMString
A string of the form `number';
represents the scriptsizemultiplier
attribute for the
mstyle
element, if specified. See also the discussion
of this attribute.
scriptminsize
of type
DOMString
A string of the form `number
v-unit'; represents the
scriptminsize
attribute for the
mstyle
element, if specified. See also the discussion
of this attribute.
color
of type
DOMString
A string representation of a color; represents the
color
attribute for the mstyle
element, if specified. See also the discussion of this attribute.
background
of type
DOMString
A string representation of a color or the string
transparent
; represents the
background
attribute for the
mstyle
element, if specified. See also the discussion
of this attribute.
Extends:
MathMLPresentationContainer
This interface extends the MathMLElement
interface for
the MathML spacing adjustment element
mpadded
.
IDL Definition
interface MathMLPaddedElement: MathMLPresentationContainer { attribute DOMString width; attribute DOMString lspace; attribute DOMString height; attribute DOMString depth; };
Attributes
width
of type
DOMString
A string representing the total width
of the
mpadded
element, if specified. See also the discussion
of this attribute.
lspace
of type
DOMString
A string representing the lspace
attribute -
the additional space to the left - of the mpadded
element, if specified. See also the discussion of this
attribute.
height
of type
DOMString
A string representing the height
above the
baseline of the mpadded
element, if specified. See
also the discussion of this attribute.
depth
of type
DOMString
A string representing the depth
beneath the
baseline of the mpadded
element, if specified. See
also the discussion of this attribute.
Extends:
MathMLPresentationContainer
This interface extends the
MathMLPresentationContainer
interface for the MathML
fenced content element mfenced
.
IDL Definition
interface MathMLFencedElement: MathMLPresentationContainer { attribute DOMString open; attribute DOMString close; attribute DOMString separators; };
Attributes
open
of type
DOMString
A string representing the opening-fence for the
mfenced
element, if specified; this is the element's
open
attribute.
close
of type
DOMString
A string representing the opening-fence for the
mfenced
element, if specified; this is the element's
close
attribute.
separators
of type
DOMString
A string representing any separating characters inside the
mfenced
element, if specified; this is the element's
separators
attribute.
Extends:
MathMLPresentationContainer
This interface supports the menclose
element Section 3.3.9 [Enclose Expression Inside Notation
(menclose
)].
IDL Definition
interface MathMLEncloseElement: MathMLPresentationContainer { attribute DOMString notation; };
Attributes
notation
of type
DOMString
A string giving a name for the notation enclosing
the element's contents. Represents the notation
attribute
of the menclose
. Allowed values are
longdiv
,
actuarial
,
radical
.
Extends:
MathMLPresentationContainer
This interface extends the
MathMLPresentationContainer
interface for the MathML
enlivening expression element maction
.
IDL Definition
interface MathMLActionElement: MathMLPresentationContainer { attribute DOMString actiontype; attribute DOMString selection; };
Attributes
actiontype
of type
DOMString
A string specifying the action. Possible values include
toggle
,
statusline
,
tooltip
,
highlight
, and
menu
.
selection
of type
DOMString
A string specifying an integer that selects the current subject of the action.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML fraction element mfrac
.
IDL Definition
interface MathMLFractionElement: MathMLPresentationElement { attribute DOMString linethickness; attribute MathMLElement numerator; attribute MathMLElement denominator; };
Attributes
linethickness
of type
DOMString
A string representing the linethickness
attribute of the mfrac
, if specified.
numerator
of type
MathMLElement
The first child MathMLElement
of the
MathMLFractionElement
; represents the numerator of the represented
fraction.
denominator
of type
MathMLElement
The second child MathMLElement
of the
MathMLFractionElement
; represents the denominator of the
represented fraction.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML radical and square root elements
mroot
and msqrt
.
IDL Definition
interface MathMLRadicalElement: MathMLPresentationElement { attribute MathMLElement radicand; attribute MathMLElement index; };
Attributes
radicand
of type
MathMLElement
The first child MathMLElement
of the
MathMLRadicalElement
; represents the base of the
represented radical.
index
of type
MathMLElement
The second child MathMLElement
of the
MathMLRadicalElement
; represents the index of the
represented radical. This must be null
for
msqrt
elements.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML subscript, superscript and
subscript-superscript pair elements
msub
, msup
, and
msubsup
.
IDL Definition
interface MathMLScriptElement: MathMLPresentationElement { attribute DOMString subscriptshift; attribute DOMString superscriptshift; attribute MathMLElement base; attribute MathMLElement subscript; attribute MathMLElement superscript; };
Attributes
subscriptshift
of type
DOMString
A string representing the minimum amount to shift the baseline of
the subscript down, if specified; this is the element's
subscriptshift
attribute. This must return null
for an msup
.
superscriptshift
of type
DOMString
A string representing the minimum amount to shift the baseline of
the superscript up, if specified; this is the element's
superscriptshift
attribute. This must return
null
for a msub
.
base
of type
MathMLElement
A MathMLElement
representing the base of
the script. This is the first child of the element.
subscript
of type
MathMLElement
A MathMLElement
representing the subscript
of the script. This is the second child of a msub
or msubsup
; retrieval must return null
for an msup
.
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised when the element is
a msup
.
superscript
of type
MathMLElement
A MathMLElement
representing the
superscript of the script. This is the second child of a
msup
or the third child of a
msubsup
; retrieval must return null
for an
msub
.
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised when the element is
a msub
.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML underscript, overscript and
overscript-underscript pair elements
munder
, mover
and
munderover
.
IDL Definition
interface MathMLUnderOverElement: MathMLPresentationElement { attribute DOMString accentunder; attribute DOMString accent; attribute MathMLElement base; attribute MathMLElement underscript; attribute MathMLElement overscript; };
Attributes
accentunder
of type
DOMString
Either true
or false
if
present; a string controlling whether underscript is drawn as an
`accent' or as a `limit', if specified; this is the
element's accentunder
attribute. This must return
null
for an mover
.
accent
of type
DOMString
Either true
or false
if
present; a string controlling whether overscript is drawn as an
`accent' or as a `limit', if specified; this is the
element's accent
attribute. This must return
null
for an munder
.
base
of type
MathMLElement
A MathMLElement
representing the base of
the script. This is the first child of the element.
underscript
of type
MathMLElement
A MathMLElement
representing the
underscript of the script. This is the second child of a
munder
or munderover
;
retrieval must return null
for an mover
.
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised when the element is a
mover
.
overscript
of type
MathMLElement
A MathMLElement
representing the
overscript of the script. This is the second child of a
mover
or the third child of a
munderover
; retrieval must return null
for an
munder
.
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised when the element is a
munder
.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML multiscripts (including prescripts or
tensors) element mmultiscripts
.
IDL Definition
interface MathMLMultiScriptsElement: MathMLPresentationElement { attribute DOMString subscriptshift; attribute DOMString superscriptshift; attribute MathMLElement base; readonly attribute MathMLNodeList prescripts; readonly attribute MathMLNodeList scripts; readonly attribute unsigned long numprescriptcolumns; readonly attribute unsigned long numscriptcolumns; MathMLElement getPreSubScript(in unsigned long colIndex); MathMLElement getSubScript(in unsigned long colIndex); MathMLElement getPreSuperScript(in unsigned long colIndex); MathMLElement getSuperScript(in unsigned long colIndex); MathMLElement insertPreSubScriptBefore(in unsigned long colIndex, in MathMLElement newScript); MathMLElement setPreSubScriptAt(in unsigned long colIndex, in MathMLElement newScript); MathMLElement insertSubScriptBefore(in unsigned long colIndex, in MathMLElement newScript); MathMLElement setSubScriptAt(in unsigned long colIndex, in MathMLElement newScript); MathMLElement insertPreSuperScriptBefore(in unsigned long colIndex, in MathMLElement newScript); MathMLElement setPreSuperScriptAt(in unsigned long colIndex, in MathMLElement newScript); MathMLElement insertSuperScriptBefore(in unsigned long colIndex, in MathMLElement newScript); MathMLElement setSuperScriptAt(in unsigned long colIndex, in MathMLElement newScript); };
Attributes
subscriptshift
of type
DOMString
A string representing the minimum amount to shift the baseline of
the subscripts down, if specified; this is the element's
subscriptshift
attribute.
superscriptshift
of type
DOMString
A string representing the minimum amount to shift the baseline of
the superscripts up, if specified; this is the element's
superscriptshift
attribute.
base
of type
MathMLElement
A MathMLElement
representing the base of
the script. This is the first child of the element.
prescripts
of type
MathMLNodeList
, readonlyA NodeList
representing the prescripts of
the script, which appear in the order described by the expression
(prescript presuperscript)*. This is the same as traversing
the contents of the NodeList
returned by
Node::childNodes()
from the Node
following the
<mprescripts/>
(if present) to the end of the
list.
scripts
of type
MathMLNodeList
, readonlyA MathMLNodeList
representing the scripts of the
script, which appear in the order described by the expression (script
superscript)*. This is the same as traversing the contents of the
NodeList
returned by Node::childNodes()
from the first
Node
up to and including the Node
preceding the
<mprescripts/>
(if present).
numprescriptcolumns
of type
unsigned long
, readonlyThe number of script/subscript columns preceding (to the left of)
the base. Should always be half of
getprescripts().length()
numscriptcolumns
of type
unsigned long
, readonlyThe number of script/subscript columns following (to the right
of) the base. Should always be half of
getscripts().length()
Methods
getPreSubScript
A convenience method to retrieve pre-subscript children of the element, referenced by column index .
Parameters
unsigned long | colIndex |
Column index of prescript (where 1 represents the leftmost prescript column). |
Return value
MathMLElement |
Returns the |
This method raises no exceptions.
getSubScript
A convenience method to retrieve subscript children of the element, referenced by column index.
Parameters
unsigned long | colIndex |
Column index of script (where 1 represents the leftmost script column, the first to the right of the base). |
Return value
MathMLElement |
Returns the |
This method raises no exceptions.
getPreSuperScript
A convenience method to retrieve pre-superscript children of the element, referenced by column index .
Parameters
unsigned long | colIndex |
Column index of pre-superscript (where 1 represents the leftmost prescript column). |
Return value
MathMLElement |
Returns the |
This method raises no exceptions.
getSuperScript
A convenience method to retrieve superscript children of the element, referenced by column index .
Parameters
unsigned long | colIndex |
Column index of script (where 1 represents the leftmost script column, the first to the right of the base) |
Return value
MathMLElement |
Returns the |
This method raises no exceptions.
insertPreSubScriptBefore
A convenience method to insert a pre-subscript before the position referenced by column index. If
colIndex
is 0, the new pre-subscript is appended
as the last pre-subscript of the
mmultiscripts
element; if colIndex is 1, a new pre-subscript is prepended at the far left. Note that inserting a
new pre-subscript will cause the insertion of an empty
pre-superscript in the same column.
Parameters
unsigned long | colIndex |
Column index of pre-subscript (where 1 represents the leftmost prescript column). |
MathMLElement | newScript |
A |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a pre-subscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than the number of pre-scripts of the element.
setPreSubScriptAt
A convenience method to set the pre-subscript child at the position referenced by colIndex
.
If there is currently a pre-subscript at this position, it is
replaced by newScript
.
Parameters
unsigned long | colIndex |
Column index of pre-subscript (where 1 represents the leftmost prescript column). |
MathMLElement | newScript |
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a pre-subscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than one more than the number of pre-scripts of the element.
insertSubScriptBefore
A convenience method to insert a subscript before the position referenced by column index. If
colIndex
is 0, the new subscript is appended
as the last subscript of the mmultiscripts
element; if colIndex is 1, a new subscript is prepended
at the far left. Note that inserting a new subscript will
cause the insertion of an empty superscript in the same column.
Parameters
unsigned long | colIndex |
Column index of subscript, where 1 represents the leftmost script column (the first to the right of the base). |
MathMLElement | newScript |
A |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a subscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than the number of scripts of the element.
setSubScriptAt
A convenience method to set the subscript child at the position referenced by colIndex
.
If there is currently a subscript at this position, it is
replaced by newScript
.
Parameters
unsigned long | colIndex |
Column index of subscript, where 1 represents the leftmost script column (the first to the right of the base). |
MathMLElement | newScript |
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a subscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than one more than the number of scripts of the element.
insertPreSuperScriptBefore
A convenience method to insert a pre-superscript before the position referenced by column index. If
colIndex
is 0, the new pre-superscript is appended
as the last pre-superscript of the
mmultiscripts
element; if colIndex is 1, a new pre-superscript is prepended at the far left. Note that inserting a
new pre-superscript will cause the insertion of an empty
pre-subscript in the same column.
Parameters
unsigned long | colIndex |
Column index of pre-superscript (where 1 represents the leftmost prescript column). |
MathMLElement | newScript |
A |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a pre-superscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than the number of pre-scripts of the element.
setPreSuperScriptAt
A convenience method to set the pre-superscript child at the position referenced by colIndex
.
If there is currently a pre-superscript at this position, it is
replaced by newScript
.
Parameters
unsigned long | colIndex |
Column index of pre-superscript (where 1 represents the leftmost prescript column). |
MathMLElement | newScript |
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a pre-superscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than one more than the number of pre-scripts of the element.
insertSuperScriptBefore
A convenience method to insert a superscript before the position referenced by column index. If
colIndex
is 0, the new superscript is appended
as the last superscript of the mmultiscripts
element; if colIndex is 1, a new superscript is prepended
at the far left. Note that inserting a new superscript will
cause the insertion of an empty subscript in the same column.
Parameters
unsigned long | colIndex |
Column index of superscript, where 1 represents the leftmost script column (the first to the right of the base). |
MathMLElement | newScript |
A |
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a superscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than the number of scripts of the element.
setSuperScriptAt
A convenience method to set the superscript child at the position referenced by colIndex
.
If there is currently a superscript at this position, it is
replaced by newScript
.
Parameters
unsigned long | colIndex |
Column index of superscript, where 1 represents the leftmost script column (the first to the right of the base). |
MathMLElement | newScript |
|
Return value
MathMLElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newScript
represents
an element that cannot be a superscript.
INDEX_SIZE_ERR: Raised if colIndex
is greater
than one more than the number of scripts of the element.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for the MathML table
or matrix element mtable
.
IDL Definition
interface MathMLTableElement: MathMLPresentationElement { attribute DOMString align; attribute DOMString rowalign; attribute DOMString columnalign; attribute DOMString groupalign; attribute DOMString alignmentscope; attribute DOMString columnwidth; attribute DOMString width; attribute DOMString rowspacing; attribute DOMString columnspacing; attribute DOMString rowlines; attribute DOMString columnlines; attribute DOMString frame; attribute DOMString framespacing; attribute DOMString equalrows; attribute DOMString equalcolumns; attribute DOMString displaystyle; attribute DOMString side; attribute DOMString minlabelspacing; readonly attribute MathMLNodeList rows; MathMLTableRowElement insertEmptyRow(in long index); MathMLLabeledRowElement insertEmptyLabeledRow(in long index); MathMLTableRowElement getRow(in unsigned long index); MathMLTableRowElement insertRow(in long index, in MathMLTableRowElement newRow); MathMLTableRowElement setRow(in long index, in MathMLTableRowElement newRow); void deleteRow(in unsigned long index); MathMLTableRowElement removeRow(in long index); };
Attributes
align
of type
DOMString
A string representing the vertical alignment of the table with
the adjacent text. Allowed values are
(top
|
bottom
|
center
|
baseline
|
axis
)[rownumber],
where rownumber is between 1 and n (for a table with
n rows) or -1 and -n.
rowalign
of type
DOMString
A string representing the alignment of entries in each
row, consisting of a space-separated sequence of alignment
specifiers, each of which can have the following values:
top
,
bottom
,
center
,
baseline
, or
axis
.
columnalign
of type
DOMString
A string representing the alignment of entries in each
column, consisting of a space-separated sequence of alignment
specifiers, each of which can have the following values:
left
,
center
, or
right
.
groupalign
of type
DOMString
A string specifying how the alignment groups within the cells
of each row are to be aligned with the corresponding items above or below them
in the same column. The string consists of a sequence of braced group
alignment lists. Each group alignment list is a space-separated
sequence, each of which can have the following values:
left
,
right
,
center
, or
decimalpoint
.
alignmentscope
of type
DOMString
A string consisting of the values true
or
false
indicating, for each column, whether it can be
used as an alignment scope.
columnwidth
of type
DOMString
A string consisting of a space-separated sequence of
specifiers, each of which can have one of the following forms:
auto
,
number h-unit
,
namedspace
, or
fit
. (A value of the form namedspace
is one
of veryverythinmathspace
, verythinmathspace
,
thinmathspace
, mediummathspace
,
thickmathspace
, verythickmathspace
, or
veryverythickmathspace
.) This represents the element's
columnwidth
attribute.
width
of type
DOMString
A string that is either of the form
number h-unit
or is the string auto
.
This represents the element's width
attribute.
rowspacing
of type
DOMString
A string consisting of a space-separated sequence of
specifiers of the form number v-unit
representing the space to be added between rows.
columnspacing
of type
DOMString
A string consisting of a space-separated sequence of
specifiers of the form number h-unit
representing the space to be added between columns.
rowlines
of type
DOMString
A string specifying whether and what kind of lines should be
added between each row. The string consists of a
space-separated sequence of specifiers, each of which
can have the following values:
none
,
solid
, or
dashed
.
columnlines
of type
DOMString
A string specifying whether and what kind of lines should be
added between each column. The string consists of a
space-separated sequence of specifiers, each of which
can have the following values:
none
,
solid
, or
dashed
.
frame
of type
DOMString
A string specifying a frame around the table. Allowed
values are (none | solid | dashed)
.
framespacing
of type
DOMString
A string of the form number h-unit number v-unit
specifying the spacing between table and its frame.
equalrows
of type
DOMString
A string with the values true
or
false
.
equalcolumns
of type
DOMString
A string with the values true
or
false
.
displaystyle
of type
DOMString
A string with the values true
or
false
.
side
of type
DOMString
A string with the values left
,
right
, leftoverlap
, or
rightoverlap
.
minlabelspacing
of type
DOMString
A string of the form number h-unit
, specifying
the minimum space between a label and the adjacent entry in the labeled row.
rows
of type
MathMLNodeList
, readonlyA MathMLNodeList
consisting
of MathMLTableRowElements
and MathMLLabeledRowElements
representing the rows of the table. This is a live object.
Methods
insertEmptyRow
A convenience method to insert a new (empty)
row (mtr
) in the table before the current index
-th row. If index
is less than 0, the new row is inserted
before the -index
-th row counting up from the current last row; if
index
is equal to the current number of rows, the new row is
appended as the last row.
Parameters
long | index |
Position before which to insert the new row, where 0 represents the first row. Negative numbers are used to count backwards from the last row. |
Return value
MathMLTableRowElement |
Returns the |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of rows of this mtable
element or less than minus this number.
insertEmptyLabeledRow
A convenience method to insert a new (empty)
labeled row (mlabeledtr
) in the table before the
current index
-th row. If index
is less than 0, the new row
is inserted before the -index
-th row counting up from the current
last row; if index
is equal to the current number of rows, the new
row is appended as the last row.
Parameters
long | index |
Position before which to insert the new row, where 0 represents the first row. Negative numbers are used to count backwards from the last row. |
Return value
MathMLLabeledRowElement |
Returns the |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of rows of this mtable
element or less than minus this number.
getRow
A convenience method to retrieve the index
-th row
from the table. If index
is less than 0, the -index
-th row
from the bottom of the table is retrieved. (So, for instance, if index
is -2, the next-to-last row is retrieved.) If index
is not
a valid value (i.e. is greater than or equal to the number of rows, or is
less than minus the number of rows), a null MathMLTableRowElement
is
returned.
Parameters
unsigned long | index |
Index of the row to be returned, where 0 represents the first row. Negative numbers are used to count backwards from the last row. |
Return value
MathMLTableRowElement |
Returns the |
This method raises no exceptions.
insertRow
A convenience method to insert the new row or
labeled row (mtr
or mlabeledtr
) represented by newRow
in the table before the current index
-th row. If index
is equal to the current number of rows,
newRow
is appended as the last row in the table. If index
is less than 0, the new row is inserted before the -index
-th row
from the bottom of the table. (So, for instance, if index
is -2,
the new row is inserted before the next-to-last current row.)
Parameters
long | index |
Index before which to insert |
MathMLTableRowElement | newRow |
A |
Return value
MathMLTableRowElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newRow
is not a
MathMLTableRowElement
or MathMLLabeledRowElement
.
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of rows or less than minus the current number of
rows of this mtable
element.
setRow
A method to set the value of the row in the
table at the specified index to the mtr
or
mlabeledtr
represented by newRow
. If index
is less than 0, the -index
-th row counting up from the
last is replaced by newRow
; if index
is one more than the
current number of rows, the new row is appended as the last row in the
table.
Parameters
long | index |
Index of the row to be set to |
MathMLTableRowElement | newRow |
A |
Return value
MathMLTableRowElement |
Returns the |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if newRow
is not a
MathMLTableRowElement
or MathMLLabeledRowElement
.
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of rows of this mtable
element or less than minus this number.
deleteRow
A convenience method to delete the row of the
table at the specified index. If index
is less than 0, the -index
-th row from the bottom of the table is deleted. (So, for
instance, if index
is -2, the next-to-last row is deleted.)
Parameters
unsigned long | index |
Index of row to be deleted, where 0 represents the first row. |
Return value
void |
None. |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than or equal to the current number of rows of this
mtable
element or less than minus this number.
removeRow
A convenience method to delete the row of the
table at the specified index and return it to the caller. If index
is less than 0, the -index
-th row from the bottom of the table is
deleted. (So, for instance, if index
is -2, the next-to-last
row is deleted.)
Parameters
long | index |
Index of row to be removed, where 0 represents the first row. |
Return value
MathMLTableRowElement |
A |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than or equal to the number of rows of this mtable
element or less than minus this number.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for the MathML table or matrix row element mtr
.
IDL Definition
interface MathMLTableRowElement: MathMLPresentationElement { attribute DOMString rowalign; attribute DOMString columnalign; attribute DOMString groupalign; readonly attribute MathMLNodeList cells; MathMLTableCellElement insertEmptyCell(in unsigned long index); MathMLTableCellElement insertCell(in MathMLTableCellElement newCell, in unsigned long index); MathMLTableCellElement setCell(in MathMLTableCellElement newCell, in unsigned long index); void deleteCell(in unsigned long index); };
Attributes
rowalign
of type
DOMString
A string representing an override of the row alignment specified in
the containing mtable
. Allowed values are
top
,
bottom
,
center
,
baseline
, and
axis
.
columnalign
of type
DOMString
A string representing an override of the column alignment specified in
the containing mtable
. Allowed values are
left
,
center
, and
right
.
groupalign
of type
DOMString
[To be changed?]
cells
of type
MathMLNodeList
, readonlyA MathMLNodeList
consisting of the cells of the
row. Note that this does not include the label if this is a
MathMLLabeledRowElement
!
Methods
insertEmptyCell
A convenience method to insert a new (empty) cell in the row.
Parameters
unsigned long | index |
Index of the cell before which the new
cell is to be inserted, where the first cell is numbered 0. If |
Return value
MathMLTableCellElement |
Returns the |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of cells of this mtr
element.
insertCell
A convenience method to insert a new cell in the row.
Parameters
MathMLTableCellElement | newCell |
A |
unsigned long | index |
Index of the cell before which the new
cell is to be inserted, where the first cell is numbered 0. If |
Return value
MathMLTableCellElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of cells of this mtr
element.
setCell
A convenience method to set the value of a cell
in the row to newCell
. If index is equal to the current number
of cells, newCell
is appended as the last cell in the row.
Parameters
MathMLTableCellElement | newCell |
A |
unsigned long | index |
Index of the cell that is to be
replaced by the new cell, where the first cell is numbered 0. Note
that the index will differ from the index of the corresponding |
Return value
MathMLTableCellElement |
The |
This method raises no exceptions.
deleteCell
A convenience method to delete a cell in the row.
Parameters
unsigned long | index |
Index of cell to be deleted. Note that the
count will differ from the |
Return value
void |
None. |
This method raises no exceptions.
Extends:
MathMLTableRowElement
This interface extends the MathMLTableRowElement
interface to represent the mlabeledtr
element
Section 3.5.3 [Labeled Row in Table or Matrix
(mlabeledtr
)]. Note that the presence of a label
causes the index
th child node to differ from the index
-th
cell!
IDL Definition
interface MathMLLabeledRowElement: MathMLTableRowElement { attribute MathMLElement label; };
Attributes
label
of type
MathMLElement
A MathMLElement
representing the
label of this row. Note that retrieving this should have the same effect as
a call to Node::getfirstChild()
, while setting it should have the same effect
as Node::replaceChild(Node::getfirstChild())
.
Exceptions on Setting
DOMException
NO_MODIFICATION_ALLOWED_ERR: Raised if this MathMLElement
or the
new MathMLElement
is read-only.
Extends:
MathMLPresentationContainer
This interface extends the MathMLPresentationContainer
interface for the MathML table or matrix cell element mtd
.
IDL Definition
interface MathMLTableCellElement: MathMLPresentationContainer { attribute DOMString rowspan; attribute DOMString columnspan; attribute DOMString rowalign; attribute DOMString columnalign; attribute DOMString groupalign; readonly attribute boolean hasaligngroups; readonly attribute DOMString cellindex; };
Attributes
rowspan
of type
DOMString
A string representing a positive integer that specifies the number of rows spanned by this cell. The default is 1.
columnspan
of type
DOMString
A string representing a positive integer that specifies the number of columns spanned by this cell. The default is 1.
rowalign
of type
DOMString
A string specifying an override of the inherited vertical
alignment of this cell within the table row. Allowed values are
top
,
bottom
,
center
,
baseline
, and
axis
.
columnalign
of type
DOMString
A string specifying an override of the inherited horizontal
alignment of this cell within the table column. Allowed values are
left
,
center
, and
right
.
groupalign
of type
DOMString
A string specifying how the alignment groups within the cell are
to be aligned with those in cells above or below this cell. The string
consists of a space-separated sequence of specifiers, each of which
can have the following values:
left
,
right
,
center
, or
decimalpoint
.
hasaligngroups
of type
boolean
, readonlyA string with the values true
or
false
indicating whether the cell contains align groups.
cellindex
of type
DOMString
, readonlyA string representing the integer index (1-based?) of the cell in its containing row. [What about spanning cells? How do these affect this value?]
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML group -alignment element <maligngroup/>
.
IDL Definition
interface MathMLAlignGroupElement: MathMLPresentationElement { attribute DOMString groupalign; };
Attributes
groupalign
of type
DOMString
A string specifying how the alignment group is to be aligned with
other alignment groups above or below it. Allowed values are
left
,
right
,
center
, or
decimalpoint
.
Extends:
MathMLPresentationElement
This interface extends the MathMLPresentationElement
interface for
the MathML alignment mark element
<malignmark/>
.
IDL Definition
interface MathMLAlignMarkElement: MathMLPresentationElement { attribute DOMString edge; };
Attributes
edge
of type
DOMString
A string specifying alignment on the right edge of the preceding
element or the left edge of the following element. Allowed values are
left
and
right
.
Extends:
MathMLElement
This interface is provided to serve as a base interface for various MathML Content interfaces. It contains no new attributes or methods at this time; however, it is felt that the distinction between Presentation and Content MathML entities should be indicated in the MathMLElement hierarchy. In particular, future versions of the MathML DOM may add functionality on this interface; it may also serve as an aid to implementors.
IDL Definition
interface MathMLContentElement: MathMLElement { };
Extends:
MathMLContentElement
This is the interface from which the interfaces representing
the MathML Content token elements (ci
, cn
and
csymbol
) are derived. These elements may contain MathML Presentation
elements, Text
nodes, or a combination of both. Thus the getArgument
and insertArgument
methods have been provided to deal with this
distinction between these elements and other MathML Content elements.
IDL Definition
interface MathMLContentToken: MathMLContentElement { readonly attribute MathMLNodeList arguments; attribute DOMString definitionURL; attribute DOMString encoding; Node getArgument(in unsigned long index); Node insertArgument(in unsigned long index, in Node newArgument); Node setArgument(in unsigned long index, in Node newArgument); void deleteArgument(in unsigned long index); Node removeArgument(in unsigned long index); };
Attributes
arguments
of type
MathMLNodeList
, readonlyThe arguments of this element, returned as a MathMLNodeList
.
Note that this is not necessarily the same as Node::childNodes
, particularly
in the case of the cn
element. The reason is that the sep
elements that are used to separate the arguments of a cn
are
not returned.
definitionURL
of type
DOMString
A URI pointing to a semantic definition for this content element. Note that there is no stipulation about the form this definition may take!
encoding
of type
DOMString
A string describing the syntax in which the definition
located at definitionURL
is given.
Methods
getArgument
A convenience method to retrieve the child
argument at the position referenced by index
. Note that this is
not necessarily the same as the index
-th child Node
of this Element
; in particular, sep
elements will not be counted.
Parameters
unsigned long | index |
Position of desired argument in the list of arguments. The first argument is numbered 1. |
Return value
Node |
The |
This method raises no exceptions.
insertArgument
A convenience method to insert newArgument
before the current index
-th argument child of this element.
If index
is 0, newArgument
is appended as the last argument.
Parameters
unsigned long | index |
Position before which |
Node | newArgument |
|
Return value
Node |
The |
This method raises no exceptions.
setArgument
A convenience method to set an argument child at the position
referenced by index
. If there is currently an argument at this
position, it is replaced by newArgument
.
Parameters
unsigned long | index |
Position of the argument that is to be
set to |
Node | newArgument |
|
Return value
Node |
The |
This method raises no exceptions.
deleteArgument
A convenience method to delete the argument child
located at the position referenced by index
.
Parameters
unsigned long | index |
Position of the argument to be deleted from the list of arguments. The first argument is numbered 1. |
Return value
void |
None. |
This method raises no exceptions.
removeArgument
A convenience method to delete the argument child
located at the position referenced by index
, and to return it to
the caller.
Parameters
unsigned long | index |
Position of the argument to be deleted from the list of arguments. The first argument is numbered 1. |
Return value
Node |
A |
This method raises no exceptions.
Extends:
MathMLContentToken
The cn
element is used to specify actual
numeric constants.
IDL Definition
interface MathMLCnElement: MathMLContentToken { attribute DOMString type; attribute DOMString base; readonly attribute unsigned long nargs; };
Attributes
type
of type
DOMString
Values include, but are not restricted to,
e-notation
,
integer
,
rational
,
real
,
float
,
complex
,
complex-polar
,
complex-cartesian
, and
constant
.
base
of type
DOMString
A string representing an integer between 2 and 36; the base of the numerical representation.
nargs
of type
unsigned long
, readonlyThe number of sep
-separated arguments.
Extends:
MathMLContentToken
The ci
element is used to specify a symbolic
name.
IDL Definition
interface MathMLCiElement: MathMLContentToken { attribute DOMString type; };
Attributes
type
of type
DOMString
Values include
integer
,
rational
,
real
,
float
,
complex
,
complex-polar
,
complex-cartesian
,
constant
,
any of the MathML content container types
(vector
,
matrix
,
set
,
list
etc.)
or their types.
Extends:
MathMLContentToken
This interface represents the csymbol
element. Although it currently has no attributes or methods distinct from those of MathMLContentToken
,
a separate interface is provided to emphasize the conceptual role of the csymbol
element.
IDL Definition
interface MathMLCsymbolElement: MathMLContentToken { };
We have added interfaces for content elements that are containers, i.e. elements that may contain child elements corresponding to arguments, bound variables, conditions, or lower or upper limits.
Extends:
MathMLContentElement
, MathMLContainer
This interface supports the MathML Content elements that may
contain child Content elements. The elements directly supported by MathMLContentContainer
include: reln
(deprecated),
lambda
, lowlimit
,
uplimit
, degree
,
domainofapplication
, and momentabout
.
Interfaces derived from MathMLContentContainer support the elements apply
,
fn
, interval
,
condition
, declare
,
bvar
, set
,
list
, vector
,
matrix
, and matrixrow
.
IDL Definition
interface MathMLContentContainer: MathMLContentElement, MathMLContainer { readonly attribute unsigned long nBoundVariables; attribute MathMLConditionElement condition; attribute MathMLElement opDegree; attribute MathMLElement domainOfApplication; attribute MathMLElement momentAbout; MathMLBvarElement getBoundVariable(in unsigned long index); MathMLBvarElement insertBoundVariable(in MathMLBvarElement newBVar, in unsigned long index); MathMLBvarElement setBoundVariable(in MathMLBvarElement newBVar, in unsigned long index); void deleteBoundVariable(in unsigned long index); MathMLBvarElement removeBoundVariable(in unsigned long index); };
Attributes
nBoundVariables
of type
unsigned long
, readonlyThe number of bvar
child elements of this element.
condition
of type
MathMLConditionElement
This attribute represents the condition
child
element of this node. See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
condition
element. In particular, raised if
this element is not a apply
,
set
, or list
.
opDegree
of type
MathMLElement
This attribute represents the degree
child
element of this node. This expresses, for instance, the degree of differentiation
if this element is a bvar
child of an
apply
element whose first child is a diff
or partialdiff
. If this is an
apply
element whose first child is a partialdiff
,
the opDegree
attribute, if present, represents the total degree of differentiation.
See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
degree
element. In particular, raised if
this element is not a bvar
or apply
.
domainOfApplication
of type
MathMLElement
This attribute represents the domainofapplication
child
element of this node, if present. This may express, for instance, the domain of integration
if this element is an apply
element whose first child is an integral operator
(int
). See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
domainofapplication
element.
momentAbout
of type
MathMLElement
This attribute represents the momentabout
child
element of this node, if present. This typically expresses the point about which a statistical
moment is to be calculated, if this element is an apply
element whose
first child is a moment
. See
Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
momentabout
element. In particular, raised if
this element is not an apply
whose first child is a moment
.
Methods
getBoundVariable
This method retrieves the index
-th
MathMLBvarElement
child of the MathMLElement
. Note that
only bvar
child elements are counted in determining
the index
-th bound variable.
Parameters
unsigned long | index |
The one-based index into the bound variable
children of this element of the |
Return value
MathMLBvarElement |
The |
This method raises no exceptions.
insertBoundVariable
This method inserts a MathMLBvarElement
as a child node before the current index
-th bound variable child
of this MathMLElement
. If index
is 0, newBVar
is appended as the last bound variable child. This has the effect of adding
a bound variable to the expression this element represents. Note that the
new bound variable is inserted as the index
-th
bvar
child node, not necessarily as the index
-th child node.
The point of the method is to allow insertion of bound variables without
requiring the caller to calculate the exact order of child qualifier
elements.
Parameters
MathMLBvarElement | newBVar |
A |
unsigned long | index |
The one-based index into the bound variable
children of this element before which |
Return value
MathMLBvarElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit child
bvar
elements.
setBoundVariable
This method sets the index
-th bound
variable child of this MathMLElement
to newBVar
. This
has the effect of setting a bound variable in the expression this element
represents. Note that the new bound variable is inserted as the index
-th bvar
child node, not necessarily
as the index
-th child node. The point of the method is to allow
insertion of bound variables without requiring the caller to calculate the
exact order of child qualifier elements. If there is already a
bvar
at the index
-th position, it is
replaced by newBVar
.
Parameters
MathMLBvarElement | newBVar |
The new |
unsigned long | index |
The one-based index into the bound variable
children of this element at which |
Return value
MathMLBvarElement |
The |
Exceptions
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit child
bvar
elements.
deleteBoundVariable
This method deletes the index
-th
MathMLBvarElement
child of the MathMLElement
. This has the
effect of removing this bound variable from the list of qualifiers
affecting the element this represents.
Parameters
unsigned long | index |
The one-based index into the bound variable
children of this element of the |
Return value
void |
None. |
This method raises no exceptions.
removeBoundVariable
This method removes the index
-th
MathMLBvarElement
child of the MathMLElement
and returns
it to the caller. This has the effect of removing this bound variable from
the list of qualifiers affecting the element this represents.
Parameters
unsigned long | index |
The one-based index into the bound variable
children of this element of the |
Return value
MathMLBvarElement |
The |
This method raises no exceptions.
Extends:
MathMLContentContainer
The apply
element allows a function or
operator to be applied to its arguments.
IDL Definition
interface MathMLApplyElement: MathMLContentContainer { attribute MathMLElement operator; attribute MathMLElement domainOfApplication; attribute MathMLElement lowLimit; attribute MathMLElement upLimit; };
Attributes
operator
of type
MathMLElement
The MathML element representing the function or operator that is applied to the list of arguments.
domainOfApplication
of type
MathMLElement
This attribute represents the domainofapplication
child element of this node (if any). This expresses, for instance, the domain of integration
if this is an apply
element whose first child is a
int
. See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
domainofapplication
element.
lowLimit
of type
MathMLElement
This attribute represents the lowlimit
child element of this node (if any). This expresses, for instance, the lower limit of
integration if this is an apply
element whose first
child is a int
. See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
upLimit
of type
MathMLElement
This attribute represents the uplimit
child element of this node (if any). This expresses, for instance, the upper limit of
integration if this is an apply
element whose first
child is a int
. See Section 4.2.3.2 [Operators taking Qualifiers].
Exceptions on Setting
DOMException
HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
uplimit
element. In particular, raised if
this element is not an apply
element whose first child
is an int
, sum
,
or product
element.
Extends:
MathMLContentContainer
The fn
element makes explicit the fact that
a more general MathML object is intended to be used in the same manner as if it
were a pre-defined function such as sin
or
plus
.
IDL Definition
interface MathMLFnElement: MathMLContentContainer { attribute DOMString definitionURL; attribute DOMString encoding; };
Attributes
definitionURL
of type
DOMString
A URI pointing to a definition for this function-type element. Note that there is no stipulation about the form this definition may take!
encoding
of type
DOMString
A string describing the syntax in which the definition
located at definitionURL
is given.
Extends:
MathMLContentContainer
The lambda
element is used to construct a
user-defined function from an expression and one or more free variables.
IDL Definition
interface MathMLLambdaElement: MathMLContentContainer { attribute MathMLElement expression; };
Attributes
expression
of type
MathMLElement
The MathMLElement
representing the expression.
This is included only as a convenience; getting it should give the same
result as MathMLContentContainer::getArgument(1)
.
Extends:
MathMLContentContainer
The set
element is the container element
that represents a set of elements. The elements of a set can be defined either
by explicitly listing the elements, or by using the
bvar
and condition
elements.
IDL Definition
interface MathMLSetElement: MathMLContentContainer { readonly attribute boolean isExplicit; attribute DOMString type; };
Attributes
isExplicit
of type
boolean
, readonlyThis is true if the set is specified by giving the list of its elements explicitly.
type
of type
DOMString
The type
attribute of
the represented element. Predefined values are normal
and multiset
. See
Section 4.4.6 [Theory of Sets] and Section 4.3 [Content Element Attributes].
Extends:
MathMLContentContainer
The list
element is the container element
which represents a list of elements. Elements can be defined either by
explicitly listing the elements, or by using the bvar
and condition
elements.
IDL Definition
interface MathMLListElement: MathMLContentContainer { readonly attribute boolean isExplicit; attribute DOMString ordering; };
Attributes
isExplicit
of type
boolean
, readonlyThis is true if the list is specified by giving its elements explicitly.
ordering
of type
DOMString
The order
attribute of
the represented element. Predefined values are numeric
and lexicographic
. See
Section 4.4.6 [Theory of Sets] and Section 4.3 [Content Element Attributes].
Extends:
MathMLContentContainer
This interface represents the MathML bound variable
element bvar
. The interface currently
provides no functionality beyond that of MathMLContentContainer
,
but is useful for defining the type of bound variable access functions.
IDL Definition
interface MathMLBvarElement: MathMLContentContainer { };
Extends:
MathMLContentElement
This interface supports all of the empty built-in
operator, relation, function, and constant and symbol elements that have
the definitionURL
and encoding
attributes in addition to the standard set of attributes. The elements
supported in order of their appearance in Section 4.4 [The Content Markup Elements] are:
inverse
,
compose
,
ident
,
domain
,
codomain
,
image
,
quotient
,
exp
,
factorial
,
divide
,
max
,
min
,
minus
,
plus
,
power
,
rem
,
times
,
root
,
gcd
,
and
,
or
,
xor
,
not
,
implies
,
forall
,
exists
,
abs
,
conjugate
,
arg
,
real
,
imaginary
,
lcm
,
floor
,
ceiling
,
eq
,
neq
,
gt
,
lt
,
geq
,
leq
,
equivalent
,
approx
,
factorof
,
ln
,
log
,
int
,
diff
,
partialdiff
,
divergence
,
grad
,
curl
,
laplacian
,
union
,
intersect
,
in
,
notin
,
subset
,
prsubset
,
notsubset
,
notprsubset
,
setdiff
,
card
,
cartesianproduct
,
sum
,
product
,
limit
,
tendsto
,
sin
,
cos
,
tan
,
sec
,
csc
,
cot
,
sinh
,
cosh
,
tanh
,
sech
,
csch
,
coth
,
arcsin
,
arccos
,
arctan
,
arcsec
,
arccsc
,
arccot
,
arcsinh
,
arccosh
,
arctanh
,
arcsech
,
arccsch
,
arccoth
,
mean
,
sdev
,
variance
,
median
,
mode
,
moment
,
determinant
,
transpose
,
selector
,
vectorproduct
,
scalarproduct
,
outerproduct
,
integers
,
reals
,
rationals
,
naturalnumbers
,
complexes
,
primes
,
exponentiale
,
imaginaryi
,
notanumber
,
true
,
false
,
emptyset
,
pi
,
eulergamma
, and
infinity
.
IDL Definition
interface MathMLPredefinedSymbol: MathMLContentElement { attribute DOMString definitionURL; attribute DOMString encoding; attribute DOMString arity; readonly attribute DOMString symbolName; };
Attributes
definitionURL
of type
DOMString
A string that provides an override to the default semantics, or provides a more specific definition
encoding
of type
DOMString
A string describing the syntax in which the definition
located at definitionURL
is given.
arity
of type
DOMString
A string representing the number of arguments. Values include
0, 1, ... and variable
.
symbolName
of type
DOMString
, readonlyA string giving the name of the MathML element represented.
This is a convenience attribute only; accessing it should be synonymous with
accessing the Element::tagName
attribute.
Extends:
MathMLContentElement
The interval
element is used to represent
simple mathematical intervals on the real number line. It contains either two
child elements that evaluate to real numbers or one child element that is a
condition for defining membership in the interval.
IDL Definition
interface MathMLIntervalElement: MathMLContentElement { attribute DOMString closure; attribute MathMLCnElement start; attribute MathMLCnElement end; };
Attributes
closure
of type
DOMString
A string with value open
,
closed
,
open-closed
or
closed-open
.
The default value is closed
.
start
of type
MathMLCnElement
A MathMLCnElement
representing the real number defining
the start of the interval. If end
has not already been
set, it becomes the same as start
until set otherwise.
end
of type
MathMLCnElement
A MathMLCnElement
representing the real number defining
the end of the interval. If start
has not
already been set, it becomes the same as end
until set otherwise.
Extends:
MathMLContentElement
The condition
element is used to place a
condition on one or more free variables or identifiers.
IDL Definition
interface MathMLConditionElement: MathMLContentElement { attribute MathMLApplyElement condition; };
Attributes
condition
of type
MathMLApplyElement
A MathMLApplyElement
that represents the condition.
Extends:
MathMLContentElement
The declare
construct has two primary roles.
The first is to change or set the default attribute values for a specific
mathematical object. The second is to establish an association between a
`name' and an object.
IDL Definition
interface MathMLDeclareElement: MathMLContentElement { attribute DOMString type; attribute unsigned long nargs; attribute DOMString occurrence; attribute DOMString definitionURL; attribute DOMString encoding; attribute MathMLCiElement identifier; attribute MathMLElement constructor; };
Attributes
type
of type
DOMString
A string indicating the type of the identifier. It must be compatible
with the type of the constructor
, if a constructor
is
present. The type is inferred from the constructor
if present,
otherwise it must be specified.
nargs
of type
unsigned long
If the identifier is a function, this attribute
specifies the number of arguments the function takes. This represents the
declare
element's nargs
attribute;
see Section 4.4.2.8 [Declare (declare
)].
occurrence
of type
DOMString
A string with the values prefix
,
infix
, postfix
, or
function-model
.
definitionURL
of type
DOMString
A URI specifying the detailed semantics of the element.
encoding
of type
DOMString
A description of the syntax used in
definitionURL
.
identifier
of type
MathMLCiElement
A MathMLCiElement
representing the name being declared.
constructor
of type
MathMLElement
An optional MathMLElement
providing an initial value for the object being declared.
Extends:
MathMLContentElement
vector
is the container element for a
vector.
IDL Definition
interface MathMLVectorElement: MathMLContentElement { readonly attribute unsigned long ncomponents; MathMLContentElement getComponent(in unsigned long index); MathMLContentElement insertComponent(in MathMLContentElement newComponent, in unsigned long index); MathMLContentElement setComponent(in MathMLContentElement newComponent, in unsigned long index); deleteComponent(in unsigned long index); MathMLContentElement removeComponent(in unsigned long index); };
Attributes
ncomponents
of type
unsigned long
, readonlyThe number of components in the vector.
Methods
getComponent
A convenience method to retrieve a component.
Parameters
unsigned long | index |
Position of the component in the list of components. The first element is numbered 1. |
Return value
MathMLContentElement |
The |
This method raises no exceptions.
insertComponent
A convenience method to insert a new component
in the vector before the current index
-th component. If index
is 0 or is one more than the number of components currently in the
vector, newComponent
is appended as the last component of the
vector.
Parameters
MathMLContentElement | newComponent |
A |
unsigned long | index |
Position of the component in the list of components. The first component is numbered 1. |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the current number of components of this
vector
element.
setComponent
A convenience method to set the index
-th
component of the vector to newComponent
. If index
is one
more than the current number of components, newComponent
is
appended as the last component.
Parameters
MathMLContentElement | newComponent |
A |
unsigned long | index |
Position of the component in the list of components. The first element is numbered 1. |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the current number of components of this
vector
element.
deleteComponent
A convenience method to delete an element. The deletion changes the indices of the following components.
Parameters
unsigned long | index |
Position of the component in the vector. The position of the first component is 1 |
Return value
|
None |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the current number of components of this vector
element.
removeComponent
A convenience method to remove a component from
a vector and return it to the caller. If index is greater than the number of
components or is 0, a null MathMLContentElement
is returned.
Parameters
unsigned long | index |
Position of the component in the list of components. The first element is numbered 1. |
Return value
MathMLContentElement |
The |
This method raises no exceptions.
Extends:
MathMLContentElement
The matrix
element is the container element
for matrixrow
elements.
IDL Definition
interface MathMLMatrixElement: MathMLContentElement { readonly attribute unsigned long nrows; readonly attribute unsigned long ncols; readonly attribute MathMLNodeList rows; MathMLMatrixrowElement getRow(in unsigned long index); MathMLMatrixrowElement insertRow(in MathMLMatrixrowElement newRow, in unsigned long index); MathMLMatrixrowElement setRow(in MathMLMatrixrowElement newRow, in unsigned long index); deleteRow(in unsigned long index); MathMLMatrixrowElement removeRow(in unsigned long index); };
Attributes
nrows
of type
unsigned long
, readonlyThe number of rows in the represented matrix.
ncols
of type
unsigned long
, readonlyThe number of columns in the represented matrix.
rows
of type
MathMLNodeList
, readonlyThe rows of the matrix, returned as a
MathMLNodeList
consisting of MathMLMatrixrowElements
.
Methods
getRow
A convenience method to retrieve a specified row.
Parameters
unsigned long | index |
Position of the row in the list of rows. The first row is numbered 1. |
Return value
MathMLMatrixrowElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of rows in the matrix.
insertRow
A convenience method to insert a row before
the row that is currently the index
-th row of this
matrix
. If index
is 0, newRow
is appended as the
last row of the matrix.
Parameters
MathMLMatrixrowElement | newRow |
|
unsigned long | index |
Unsigned integer giving the row position
before which |
Return value
MathMLMatrixrowElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the number of rows in the matrix.
HIERARCHY_REQUEST_ERR: Raised if the number of cells in
newRow
doesn't match the number of columns in the matrix.
setRow
A convenience method to set the value of
the index
-th child matrixrow
element of
this element. If there is already a row at the specified index, it is
replaced by newRow
.
Parameters
MathMLMatrixrowElement | newRow |
|
unsigned long | index |
Unsigned integer giving the row
which is to be set to |
Return value
MathMLMatrixrowElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of rows in the matrix.
HIERARCHY_REQUEST_ERR: Raised if the number of cells in
newRow
doesn't match the number of columns in the matrix.
deleteRow
A convenience method to delete a row. The deletion changes the indices of the following rows.
Parameters
unsigned long | index |
Position of the row to be deleted in the list of rows |
Return value
|
None |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of rows in the matrix.
removeRow
A convenience method to remove a row and return it to the caller. The deletion changes the indices of the following rows.
Parameters
unsigned long | index |
Position of the row to be removed in the list of rows. The first row is numbered 1. |
Return value
MathMLMatrixrowElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of rows in the matrix.
Extends:
MathMLContentElement
The matrixrow
element is the container
element for the elements of a matrix
.
IDL Definition
interface MathMLMatrixrowElement: MathMLContentElement { readonly attribute unsigned long nEntries; MathMLContentElement getEntry(in unsigned long index); MathMLContentElement insertEntry(in MathMLContentElement newEntry, in unsigned long index); MathMLContentElement setEntry(in MathMLContentElement newEntry, in unsigned long index); deleteEntry(in unsigned long index); MathMLContentElement removeEntry(in unsigned long index); };
Attributes
nEntries
of type
unsigned long
, readonlyThe number of entries in the row.
Methods
getEntry
A convenience method to retrieve the contents of an entry by index.
Parameters
unsigned long | index |
Position of the entry in the row. The first entry is numbered 1. |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of entries in the row.
insertEntry
A convenience method to insert an entry before the
current index
-th entry of the row. If index
is 0, newEntry
is appended as the last entry. Note that this method increases
the size of the matrixrow
.
Parameters
MathMLContentElement | newEntry |
The |
unsigned long | index |
The index before which |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of entries in the row.
setEntry
A convenience method to set the contents of the
entry at position index
in the row to newEntry
. If there is
already a entry at the specified index, it is replaced by the new
entry.
Parameters
MathMLContentElement | newEntry |
The |
unsigned long | index |
The index of the entry that is to be
set equal to |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than one more than the number of elements in the row.
deleteEntry
A convenience method to delete an entry. The deletion changes the indices of the following entries.
Parameters
unsigned long | index |
Position of the entry to be deleted in the row. The first entry is numbered 1. |
Return value
|
None |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of entries in the row.
removeEntry
A convenience method to remove an entry from the row and return the removed entry to the caller.
Parameters
unsigned long | index |
Position of the entry to be removed from the row. The first entry is numbered 1. |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of entries in the row.
Extends:
MathMLContentElement
The piecewise
element represents
the piecewise definition of a function. It contains child piece
elements, each
represented by a MathMLCaseElement
, giving the various conditions and
associated function value specifications in the function definition, and
an optional otherwise
child element, represented by a
MathMLContentElement
, giving the `default' value of the
function - that is, the value to be assigned when none of the conditions specified in
the piece
child elements hold.
IDL Definition
interface MathMLPiecewiseElement: MathMLContentElement { readonly attribute MathMLNodeList pieces; attribute MathMLContentElement otherwise; MathMLCaseElement getCase(in unsigned long index); MathMLCaseElement setCase(in unsigned long index, in MathMLCaseElement case); void deleteCase(in unsigned long index); MathMLCaseElement removeCase(in unsigned long index); MathMLCaseElement insertCase(in unsigned long index, in MathMLCaseElement newCase); MathMLContentElement getCaseValue(in unsigned long index); MathMLContentElement setCaseValue(in unsigned long index, in MathMLContentElement value); MathMLContentElement getCaseCondition(in unsigned long index); MathMLContentElement setCaseCondition(in unsigned long index, in MathMLContentElement condition); };
Attributes
pieces
of type
MathMLNodeList
, readonlyA MathMLNodeList
containing one MathMLCaseElement
representing each of the piece
element children of this
MathMLPiecewiseElement
. The otherwise
child (if present) is not contained in this MathMLNodeList
.
otherwise
of type
MathMLContentElement
Returns a MathMLContentElement
representing the value
to be taken by the piecewise function when none of the conditions described in the
piece
children is true.
Methods
getCase
A convenience method to retrieve the child piece
at the position referenced by index
.
Parameters
unsigned long | index |
Position of desired case in the list of cases.
The first piece is numbered 1; the |
Return value
MathMLCaseElement |
The |
This method raises no exceptions.
setCase
A convenience method to set the value of the child piece
at the position referenced by index
to the value of case
.
Parameters
unsigned long | index |
Position of the |
MathMLCaseElement | case |
A |
Return value
MathMLCaseElement |
The new |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
one more than the number of pieces
in this element.
deleteCase
A convenience method to delete the child piece
at the position referenced by index
. The deletion changes the indices of
the following pieces
.
Parameters
unsigned long | index |
Position of the piece to be deleted. The first
piece is numbered 1; the |
Return value
void |
None. |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
the number of pieces
in this element.
removeCase
A convenience method to remove the child piece
at the position referenced by index
and return it to the caller. The removal
changes the indices of the following pieces
.
Parameters
unsigned long | index |
Position of the piece to be removed. The first
piece is numbered 1; the |
Return value
MathMLCaseElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater than
the number of pieces
in this element.
insertCase
A convenience method to insert a new piece
child
into this element.
Parameters
unsigned long | index |
Position before which |
MathMLCaseElement | newCase |
A |
Return value
MathMLCaseElement |
The new |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
one more than the number of pieces
in this element.
getCaseValue
A convenience method to retrieve the child of the index
th
piece
in this element which specifies the function value for that case.
Parameters
unsigned long | index |
Position of the |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of pieces
in this element.
setCaseValue
A convenience method to set the function value for the index
th
piece
in this element.
Parameters
unsigned long | index |
Position of the |
MathMLContentElement | value |
A |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of pieces
in this element.
getCaseCondition
A convenience method to retrieve the child of the piece
at the position referenced by index
which gives the condition for this case.
Parameters
unsigned long | index |
Position of the |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of pieces
in this element.
setCaseCondition
A convenience method to set the condition for the index
th
piece
in this element.
Parameters
unsigned long | index |
Position of the |
MathMLContentElement | condition |
A |
Return value
MathMLContentElement |
The |
Exceptions
DOMException
INDEX_SIZE_ERR: Raised if index
is greater
than the number of pieces
in this element.
Extends:
MathMLContentElement
The piece
element represents
one of a sequence of cases used in the piecewise definition of a function. It contains two child
elements, each represented by a MathMLContentElement
. The first child determines
the subset of the domain affected, normally by giving a condition to be satisfied. The second
gives the value of the function over the indicated subset of its domain.
IDL Definition
interface MathMLCaseElement: MathMLContentElement { attribute MathMLContentElement caseCondition; attribute MathMLContentElement caseValue; };
Attributes
caseCondition
of type
MathMLContentElement
Accesses the MathMLContentElement
representing the condition
to be satisfied in order for this branch of the piecewise definition to be used.
caseValue
of type
MathMLContentElement
Accesses the MathMLContentElement
representing the value
to be taken by the piecewise function when the condition described by caseCondition
is true.
MathMLContainer
]MathMLContainer
]MathMLContainer
]
Overview: Mathematical Markup Language (MathML) Version 2.0
Previous: C Content Element Definitions
Next: E MathML Document Object Model Bindings (Non-normative)