home *** CD-ROM | disk | FTP | other *** search
/ XML Bible (2nd Edition) / XML_Bible_Second_Edition_Hungry_Minds_2001.iso / mac / specs / XML-MathML-20010221 / xml / mathml-dom.xml < prev    next >
Text File  |  2001-02-19  |  198KB  |  3,670 lines

  1. <div1 id="mathml-dom" role="appendixd"><head>Document Object Model for MathML</head>
  2. <!-- $Id: mathml-dom.xml,v 1.34 2001/02/19 10:18:59 davidc Exp $ -->
  3.  
  4. <p>The following sections describe the interfaces that have been defined in
  5. the Document Object Model for MathML. Please refer to
  6. <specref ref="dom-intro"/> for more information.</p>
  7.  
  8. <p>Bindings for IDL, Java and ECMAScript are located in  <specref ref="dom-bindings"/>.</p>
  9.  
  10. <div2 id="dom_interfaces"><head>IDL Interfaces</head>
  11.  
  12. <div3><head>Miscellaneous Object Definitions</head>
  13. <definitions>
  14. <interface name='MathMLDOMImplementation' inherits='DOMImplementation' id='dom_DOMImplementation'>
  15. <descr><p>This interface extends the <kw>DOMImplementation</kw>
  16. interface by adding a method to create a <kw>MathMLDocument</kw>.
  17. </p>
  18. <?generate-idl?>
  19. </descr>
  20. <method name='createMathMLDocument'>
  21. <descr><p>Creates a <kw>MathMLDocument</kw> with a minimal tree
  22. containing only a <kw>MathMLMathElement</kw> corresponding to a MathML <intref ref="interf_toplevel"><kw role="element">math</kw></intref> 
  23. element. The <kw>MathMLMathElement</kw> is empty, having no child elements or non-default attributes; it is the
  24. root element of the document, and is the element accessed via the <kw>documentElement</kw> attribute of
  25. the <kw>MathMLDocument</kw>. Note that a <kw>MathMLDocument</kw> object should only be created for a 
  26. stand-alone MathML document.</p></descr>
  27. <parameters>
  28. </parameters>
  29. <returns type='MathMLDocument'>
  30. <descr><p>The <kw>MathMLDocument</kw> created.</p></descr></returns>
  31. <raises>
  32. </raises>
  33. </method>
  34. </interface>
  35.  
  36. <interface name='MathMLDocument' inherits='Document' id='dom_Document'>
  37. <descr><p>This interface extends the <kw>Document</kw> interface to
  38. add access to document properties relating to navigation. The <kw>documentElement</kw>
  39. attribute for a <kw>MathMLDocument</kw> should be the <intref ref="dom_MathElement"><kw>MathMLMathElement</kw></intref>
  40. representing the top-level <intref ref="interf_toplevel"><kw role="element">math</kw></intref> element
  41. which is the root of the document.</p>
  42. <?generate-idl?>
  43. </descr>
  44. <attribute name='referrer' type='DOMString' readonly='yes'>
  45. <descr><p>The URI of the page that linked to this document, if
  46. available. This is <kw>null</kw> if the user navigated directly to the page. If this 
  47. is not a stand-alone MathML document (e.g. is embedded in an XHTML document), this 
  48. may be retrieved from the parent <kw>Document</kw> if available.</p></descr>
  49. </attribute>
  50. <attribute name='domain' type='DOMString' readonly='yes'>
  51. <descr><p>The domain name of the server that served the document,
  52. or <kw>null</kw> if the server cannot be identified by a domain name, or if it is not
  53. available. If this is not a stand-alone MathML document (e.g. is embedded in an XHTML document), 
  54. this may be retrieved from the parent <kw>Document</kw> if available.</p></descr>
  55. </attribute>
  56. <attribute name='URI' type='DOMString' readonly='yes'>
  57. <descr><p>The complete URI of this document. This is <kw>null</kw>
  58. if this is not a stand-alone MathML document.</p></descr>
  59. </attribute>
  60. </interface>
  61.  
  62. <interface name='MathMLNodeList' inherits='NodeList' id='dom_NodeList'>
  63. <descr><p>This interface is provided as a specialization of the <kw>NodeList</kw> interface.
  64. The child <kw>Nodes</kw> of this <kw>NodeList</kw> must be <kw>MathMLElements</kw> or <kw>Text</kw> nodes.</p>
  65. <p>Note that <kw>MathMLNodeLists</kw> are frequently used in the
  66. DOM as values of <kw>readonly attributes</kw>, encapsulating, for instance,
  67. various collections of child elements. When used in this way, these objects
  68. are always understood to be <emph>live</emph>, in the sense that changes
  69. to the document are immediately reflected in them.
  70. </p>
  71. <?generate-idl?>
  72. </descr>
  73. </interface>
  74. </definitions>
  75.  
  76. </div3>
  77.  
  78. <div3><head>Generic MathML Elements</head>
  79. <definitions>
  80. <interface name='MathMLElement' inherits='Element' id='dom_Element'>
  81. <descr><p>All MathML element interfaces derive from this object, which
  82. derives from the basic DOM interface <kw>Element</kw>.</p>
  83. <?generate-idl?>
  84. </descr>
  85. <attribute name='className' type='DOMString' readonly='no'>
  86. <descr><p>The <intref ref="fund_globatt"><kw role="attrib">class</kw></intref> attribute of the element. See
  87. the discussion elsewhere in this document of the <kw role="attrib">class</kw> attribute; see also the
  88. <xspecref href="http://www.w3.org/TR/html401/struct/global.html#adef-class">HTML definition</xspecref> of this attribute.</p></descr>
  89. </attribute>
  90. <attribute name='mathElementStyle' type='DOMString' readonly='no'>
  91. <descr><p>A string identifying the element's <intref ref="fund_globatt"><kw role="attrib">style</kw></intref> 
  92. attribute.</p></descr>
  93. </attribute>
  94. <attribute name='id' type='DOMString' readonly='no'>
  95. <descr><p>The element's identifier. See the discussion elsewhere in this
  96. document of the <intref ref="fund_globatt"><kw role="attrib">id</kw></intref>
  97. attribute; see also the <xspecref href="http://www.w3.org/TR/html401/struct/global.html#adef-id">HTML definition</xspecref>.</p></descr>
  98. </attribute>
  99. <attribute name='xref' type='DOMString' readonly='no'>
  100. <descr><p>The <intref ref="fund_globatt"><kw role="attrib">xref</kw></intref> attribute of the element. See
  101. the discussion elsewhere in this document of the <kw role="attrib">xref</kw> attribute.</p></descr>
  102. </attribute>
  103. <attribute name='href' type='DOMString' readonly='no'>
  104. <descr><p>The <intref ref="fund_globatt"><kw role="attrib">xlink:href</kw></intref> attribute of the element. See
  105. the discussion elsewhere in this document of the <kw role="attrib">xlink:href</kw> attribute; see also the 
  106. <xspecref href="http://www.w3.org/TR/xlink/Overview.html#link-locators">definition</xspecref> of this attribute in the 
  107. XLink specification.</p></descr>
  108. </attribute>
  109. <attribute name='ownerMathElement' type='MathMLMathElement' readonly='yes'>
  110. <descr><p>The <kw>MathMLMathElement</kw> corresponding to the nearest 
  111. <intref ref="interf_toplevel"><kw role="element">math</kw></intref> element ancestor of this element. Should be <kw>null</kw> 
  112. if this element is a top-level <kw role="element">math</kw> element.</p></descr>
  113. </attribute>
  114. </interface>
  115.  
  116. <interface name='MathMLContainer' id='dom_Container'>
  117. <descr><p>This is an abstract interface containing functionality required by MathML elements
  118. that may contain arbitrarily many child elements. No elements are directly supported by this interface;
  119. all instances are instances of either <intref ref="dom_PresentationContainer"><kw>MathMLPresentationContainer</kw></intref>, <intref ref="dom_ContentContainer"><kw>MathMLContentContainer</kw></intref>,
  120. or <intref ref="dom_MathElement"><kw>MathMLMathElement</kw></intref>.
  121. </p>
  122. <?generate-idl?>
  123. </descr>
  124. <attribute name='nArguments' type='unsigned long' readonly='yes'>
  125. <descr><p>The number of child elements of this element 
  126. which represent arguments of the element, as opposed to qualifiers or <kw role="element">declare</kw> elements.
  127. Thus for a <kw>MathMLContentContainer</kw> it does not contain elements representing bound variables, conditions,
  128. separators, degrees, or upper or lower limits  (<intref ref="contm_bvar"><kw role="element">bvar</kw></intref>,
  129. <intref ref="contm_condition"><kw role="element">condition</kw></intref>, <intref ref="contm_sep"><kw role="element">sep</kw></intref>,
  130. <intref ref="contm_degree"><kw role="element">degree</kw></intref>, <intref ref="contm_lowlimit"><kw role="element">lowlimit</kw></intref>,
  131. or <intref ref="contm_uplimit"><kw role="element">uplimit</kw></intref>).</p></descr>
  132. </attribute>
  133. <attribute name='arguments' type='MathMLNodeList' readonly='yes'>
  134. <descr><p>This attribute accesses the child <kw>MathMLElements</kw> of 
  135. this element which are arguments of it, as a <kw>MathMLNodeList</kw>. Note that this list does not 
  136. contain any <kw>MathMLElements</kw> representing qualifier elements or <kw role="element">declare</kw> elements.</p></descr>
  137. </attribute>
  138. <attribute name='declarations' type='MathMLNodeList' readonly='yes'>
  139. <descr><p>Provides access to the <intref ref="contm_declare"><kw role="element">declare</kw></intref> elements
  140. which are children of this element, in a <kw>MathMLNodeList</kw>. All 
  141. <kw>Nodes</kw> in this list must be <kw>MathMLDeclareElements</kw>.</p></descr>
  142. </attribute>
  143. <method name='getArgument'>
  144. <descr><p>This method returns the <kw>index</kw>th child argument element of this
  145. element. <emph>This frequently differs from the value of</emph>    <code>Node::childNodes().item(index)</code>,
  146. as qualifier elements and <kw role="element">declare</kw> elements are not counted.</p></descr>
  147. <parameters>
  148. <param name='index' type='unsigned long' attr='in'>
  149. <descr><p>The one-based index of the argument to be retrieved.</p></descr>
  150. </param>
  151. </parameters>
  152. <returns type='MathMLElement'>
  153. <descr><p>A <kw>MathMLElement</kw> representing the <kw>index</kw>-th argument of this element.</p></descr></returns>
  154. <raises>
  155. <exception name='DOMException'>
  156. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  157. than the number of child elements.</p></descr></exception>
  158. </raises>
  159. </method>
  160. <method name='setArgument'>
  161. <descr><p>This method sets <kw>newArgument</kw> as the 
  162. <kw>index</kw>-th argument of this element. If there is currently an 
  163. <kw>index</kw>-th argument, it is replaced by <kw>newArgument</kw>.
  164. <emph>This frequently differs from setting the node at</emph> <code>Node::childNodes().item(index)</code>,
  165. as qualifier elements and <kw role="element">declare</kw> elements are not counted.</p></descr>
  166. <parameters>
  167. <param name='newArgument' type='MathMLElement' attr='in'>
  168. <descr><p>A <kw>MathMLElement</kw> representing the element that
  169. is to be set as the <kw>index</kw>-th argument of this element.</p></descr>
  170. </param>
  171. <param name='index' type='unsigned long' attr='in'>
  172. <descr><p>The index of the argument that is to be set to 
  173. <kw>newArgument</kw>. The first argument is numbered 1. If <kw>index</kw> is one more than
  174. the current number of arguments, a new argument is appended.</p></descr>
  175. </param>
  176. </parameters>
  177. <returns type='MathMLElement'>
  178. <descr><p>The <kw>MathMLElement</kw> child of this
  179. element that represents the new argument in the DOM.</p></descr></returns>
  180. <raises>
  181. <exception name='DOMException'>
  182. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  183. element of the type of <kw>newArgument</kw>, if this is a <kw>MathMLContentContainer</kw> and <kw>newArgument</kw>
  184. is a qualifier element, or if <kw>newElement</kw> is a <kw>MathMLDeclareElement</kw>.</p>
  185. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than one more than the number
  186. of child elements.</p></descr></exception>
  187. </raises>
  188. </method>
  189. <method name='insertArgument'>
  190. <descr><p>This method inserts <kw>newArgument</kw> before the 
  191. current <kw>index</kw>-th argument of this element. If <kw>index</kw> is 0, or if
  192. <kw>index</kw> is one more than the current number of arguments, <kw>newArgument</kw> is
  193. appended as the last argument. <emph>This frequently differs from setting the node at</emph>
  194. <code>Node::childNodes().item(index)</code>, as qualifier elements and <kw role="element">declare</kw>
  195. elements are not counted.</p></descr>
  196. <parameters>
  197. <param name='newArgument' type='MathMLElement' attr='in'>
  198. <descr><p>A <kw>MathMLElement</kw> representing
  199. the element that is to be inserted as a child argument of this element.</p></descr>
  200. </param>
  201. <param name='index' type='unsigned long' attr='in'>
  202. <descr><p>The one-based index of the position before 
  203. which <kw>newArgument</kw> is to be inserted. The first    argument is numbered 1.</p></descr>
  204. </param>
  205. </parameters>
  206. <returns type='MathMLElement'>
  207. <descr><p>The <kw>MathMLElement</kw> child of this
  208. element that represents the new argument in the DOM.</p></descr></returns>
  209. <raises>
  210. <exception name='DOMException'>
  211. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  212. argument of the type of <kw>newArgument</kw>, or, for <kw>MathMLContentContainers</kw>, if <kw>newArgument</kw>
  213. represents a qualifier element.</p>
  214. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than one more than the number of child 
  215. arguments.</p></descr></exception>
  216. </raises>
  217. </method>
  218. <method name='deleteArgument'>
  219. <descr><p>This method deletes the <kw>index</kw>-th 
  220. child element that is an argument of this element. Note that child elements 
  221. which are qualifier elements or <kw role="element">declare</kw> elements are not counted
  222. in determining the <kw>index</kw>-th argument.</p></descr>
  223. <parameters>
  224. <param name='index' type='unsigned long' attr='in'>
  225. <descr><p>The one-based index of the argument to be deleted.</p></descr>
  226. </param>
  227. </parameters>
  228. <returns type='void'>
  229. <descr><p>None.</p></descr></returns>
  230. <raises>
  231. <exception name='DOMException'>
  232. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  233. than the number of child elements.</p></descr></exception>
  234. </raises>
  235. </method>
  236. <method name='removeArgument'>
  237. <descr><p>This method deletes the <kw>index</kw>-th 
  238. child element that is an argument of this element, and returns it to the caller. 
  239. Note that child elements that are qualifier elements or <kw role="element">declare</kw>
  240. elements are not counted in determining the <kw>index</kw>-th argument.</p></descr>
  241. <parameters>
  242. <param name='index' type='unsigned long' attr='in'>
  243. <descr><p>The one-based index of the argument to 
  244. be removed.</p></descr>
  245. </param>
  246. </parameters>
  247. <returns type='MathMLElement'>
  248. <descr><p>A <kw>MathMLElement</kw> representing the 
  249. argument being removed.</p></descr></returns>
  250. <raises>
  251. <exception name='DOMException'>
  252. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  253. than the number of child elements.</p></descr></exception>
  254. </raises>
  255. </method>
  256. <method name='getDeclaration'>
  257. <descr><p>This method retrieves the <kw>index</kw>-th child 
  258. <kw role="element">declare</kw> element of this element.</p></descr>
  259. <parameters>
  260. <param name='index' type='unsigned long' attr='in'>
  261. <descr><p>A one-based index into the list of 
  262. child <kw role="element">declare</kw> elements of this element giving the
  263. position of the <kw role="element">declare</kw> element to be retrieved.</p></descr>
  264. </param>
  265. </parameters>
  266. <returns type='MathMLDeclareElement'>
  267. <descr><p>The <kw>MathMLDeclareElement</kw> representing 
  268. the <kw>index</kw>-th child <kw role="element">declare</kw>.</p></descr></returns>
  269. <raises>
  270. <exception name='DOMException'>
  271. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  272. the number of child <kw role="element">declare</kw> elements.</p></descr></exception>
  273. </raises>
  274. </method>
  275. <method name='setDeclaration'>
  276. <descr><p>This method inserts <kw>newDeclaration</kw> as the <kw>index</kw>-th 
  277. child declaration of this element. If there is already an <kw>index</kw>-th
  278. <kw role="element">declare</kw> child element, it is replaced by 
  279. <kw>newDeclaration</kw>.</p></descr>
  280. <parameters>
  281. <param name='newDeclaration' type='MathMLDeclareElement' attr='in'>
  282. <descr><p>A <kw>MathMLDeclareElement</kw> to be
  283. inserted as the <kw>index</kw>-th child <kw role="element">declare</kw> element.</p></descr>
  284. </param>
  285. <param name='index' type='unsigned long' attr='in'>
  286. <descr><p>A one-based index into the list of 
  287. child <kw role="element">declare</kw> elements of this element giving the
  288. position into which <kw>newDeclaration</kw> is to be inserted. If <kw>index</kw>
  289. is one more than the number of <kw role="element">declare</kw> children
  290. of this element, <kw>newDeclaration</kw> is appended as the last <kw role="element">declare</kw>
  291. child.</p></descr>
  292. </param>
  293. </parameters>
  294. <returns type='MathMLDeclareElement'>
  295. <descr><p>The <kw>MathMLDeclareElement</kw> being 
  296. inserted.</p></descr></returns>
  297. <raises>
  298. <exception name='DOMException'>
  299. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  300. one more than the number of child <kw role="element">declare</kw> elements.</p>
  301. <p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit child <kw role="element">declare</kw> 
  302. elements.</p></descr></exception>
  303. </raises>
  304. </method>
  305. <method name='insertDeclaration'>
  306. <descr><p>This method inserts <kw>newDeclaration</kw> 
  307. before the current <kw>index</kw>-th child <kw role="element">declare</kw> 
  308. element of this element. If <kw>index</kw> is 0, <kw>newDeclaration</kw> is appended 
  309. as the last child <kw role="element"> declare</kw> element.</p></descr>
  310. <parameters>
  311. <param name='newDeclaration' type='MathMLDeclareElement' attr='in'>
  312. <descr><p>A <kw>MathMLDeclareElement</kw> to be inserted as the 
  313. <kw>index</kw>-th child <kw role="element">declare</kw> element.</p></descr>
  314. </param>
  315. <param name='index' type='unsigned long' attr='in'>
  316. <descr><p>A one-based index into the list of 
  317. child <kw role="element">declare</kw> elements of this element giving the
  318. position before which <kw>newDeclaration</kw> is to be inserted. If <kw>index</kw> is 0
  319. or if it is one more than the number of child <kw role="element">declare</kw> children,
  320. <kw>newDeclaration</kw> is appended as the last child <kw role="element">declare</kw> element.</p></descr>
  321. </param>
  322. </parameters>
  323. <returns type='MathMLDeclareElement'>
  324. <descr><p>The <kw>MathMLDeclareElement</kw> child
  325. of this element representing <kw>newDeclaration</kw> in the DOM.</p></descr></returns>
  326. <raises>
  327. <exception name='DOMException'>
  328. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  329. than one more than the number of child <kw role="element">declare</kw> elements.</p>
  330. <p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit child <kw role="element">declare</kw> 
  331. elements.</p></descr></exception>
  332. </raises>
  333. </method>
  334. <method name='removeDeclaration'>
  335. <descr><p>This method removes the <kw>MathMLDeclareElement</kw> representing 
  336. the <kw>index</kw>-th <kw role="element">declare</kw> child element of
  337. this element, and returns it to the caller. Note that <kw>index</kw>
  338. is the position in the list of <kw role="element">declare</kw> element children, 
  339. as opposed to the position in the list of all child <kw>Nodes</kw>.</p></descr>
  340. <parameters>
  341. <param name='index' type='unsigned long' attr='in'>
  342. <descr><p>The one-based index of the <kw role="element">declare</kw>
  343. element to be removed.</p></descr>
  344. </param>
  345. </parameters>
  346. <returns type='MathMLDeclareElement'>
  347. <descr><p>The <kw>MathMLDeclareElement</kw> being
  348. removed as a child <kw>Node</kw> of this element.</p></descr></returns>
  349. <raises>
  350. <exception name='DOMException'>
  351. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  352. the number of child <kw role="element">declare</kw> elements.</p></descr></exception>
  353. </raises>
  354. </method>
  355. <method name='deleteDeclaration'>
  356. <descr><p>This method deletes the <kw>MathMLDeclareElement</kw> representing 
  357. the <kw>index</kw>-th <kw role="element">declare</kw> child element of
  358. this element. Note that <kw>index</kw> is the position in the list of <kw role="element">declare</kw>
  359. element children, as opposed to the position in the list of all child <kw>Nodes</kw>.</p></descr>
  360. <parameters>
  361. <param name='index' type='unsigned long' attr='in'>
  362. <descr><p>The one-based index of the <kw role="element">declare</kw>
  363. element to be removed.</p></descr>
  364. </param>
  365. </parameters>
  366. <returns type='void'>
  367. <descr><p>None.</p></descr></returns>
  368. <raises>
  369. <exception name='DOMException'>
  370. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  371. the number of child <kw role="element">declare</kw> elements.</p></descr></exception>
  372. </raises>
  373. </method>
  374. </interface>
  375.  
  376. <interface name='MathMLMathElement' inherits='MathMLElement, MathMLContainer' id='dom_MathElement'>
  377. <descr><p>This interface represents the top-level MathML <intref ref="interf_toplevel"><kw role="element">math</kw></intref>
  378. element.</p>
  379. <p>It may become useful for interfacing between the Document Object Model objects 
  380. encoding an enclosing document and the MathML DOM elements that are its children.
  381. It could also be used for some purposes as a MathML DOM surrogate for a
  382. <xspecref href="http://www.w3.org/TR/DOM-Level-2-Core/core.html#i-Document">Document</xspecref> object. 
  383. For instance, MathML-specific factory methods could be placed here, as could methods for creating MathML-specific <kw>Iterators</kw> or <kw>TreeWalkers</kw>.
  384. However, this functionality is as yet undefined.</p><?generate-idl?>
  385. </descr>
  386. <attribute name='macros' type='DOMString' readonly='no'>
  387. <descr><p>Represents the <kw role="attrib">macros</kw> 
  388. attribute of the <kw role="element">math</kw> element. See 
  389. <specref ref="interf_toplevel"/>.</p></descr>
  390. </attribute>
  391. <attribute name='display' type='DOMString' readonly='no'>
  392. <descr><p>Represents the <kw role="attrib">display</kw> 
  393. attribute of the <kw role="element">math</kw> element. This value is either
  394. <kw role="attval">block</kw> or <kw role="attval">inline</kw>. See 
  395. <specref ref="interf_toplevel"/>.</p></descr>
  396. </attribute>
  397. </interface>
  398.  
  399. <interface name='MathMLSemanticsElement' inherits='MathMLElement' id='dom_SemanticsElement'>
  400. <descr><p>This interface represents the <intref ref="contm_semantics"><kw role="element">semantics</kw></intref>
  401. element in MathML.</p>
  402. <?generate-idl?>
  403. </descr>
  404. <attribute name='body' type='MathMLElement' readonly='no'>
  405. <descr><p>This attribute represents the first child of the <kw role="element">semantics</kw> element, i.e. the child giving the
  406. <quote>primary</quote> content represented by the element.</p></descr>
  407. </attribute>
  408. <attribute name='nAnnotations' type='unsigned long' readonly='yes'>
  409. <descr><p>Represents the number of <intref ref="contm_annotation"><kw role="element">annotation</kw></intref> or <intref ref="contm_annotation-xml"><kw role="element">annotation-xml</kw></intref> children of 
  410. the <kw role="element">semantics</kw> element, i.e. the number of alternate content forms
  411. for this element.</p></descr>
  412. </attribute>
  413. <method name='getAnnotation'>
  414. <descr><p>This method gives access to the <kw>index</kw>-th 
  415. <quote>alternate</quote> content associated with a <kw role="element">
  416. semantics</kw> element.</p></descr>
  417. <parameters>
  418. <param name='index' type='unsigned long' attr='in'>
  419. <descr><p>The one-based index of the annotation being 
  420. retrieved.</p></descr>
  421. </param>
  422. </parameters>
  423. <returns type='MathMLElement'>
  424. <descr><p>The <intref ref="dom_AnnotationElement"><kw>MathMLAnnotationElement</kw></intref> or
  425. <intref ref="dom_XMLAnnotationElement"><kw>MathMLXMLAnnotationElement</kw></intref> representing the <kw>index</kw>-th 
  426. <intref ref="contm_annotation"><kw role="element">annotation</kw></intref> or <intref ref="contm_annotation-xml"><kw role="element">annotation-xml</kw></intref> 
  427. child of the <kw role="element">semantics</kw> element. Note that all child 
  428. elements of a <kw role="element">semantics</kw> element other than the first 
  429. are required to be of one of these types.</p></descr></returns>
  430. <raises>
  431. </raises>
  432. </method>
  433. <method name='insertAnnotation'>
  434. <descr><p>This method inserts <kw>newAnnotation</kw> before
  435. the current <kw>index</kw>-th <quote>alternate</quote> content associated 
  436. with a <kw role="element">semantics</kw> element.  If <kw>index</kw> is 0, 
  437. <kw>newAnnotation</kw> is appended as the last <kw role="element">annotation</kw> or <kw role="element">annotation-xml</kw> child of this element.</p></descr>
  438. <parameters>
  439. <param name='newAnnotation' type='MathMLElement' attr='in'>
  440. <descr><p>A <kw>MathMLAnnotationElement</kw> or 
  441. <kw>MathMLXMLAnnotationElement</kw> representing the new <kw role="element">
  442. annotation</kw> or <kw role="element">annotation-xml</kw> to be inserted.</p></descr>
  443. </param>
  444. <param name='index' type='unsigned long' attr='in'>
  445. <descr><p>The position in the list of <kw role="element">annotation</kw> or <kw role="element">annotation-xml</kw> 
  446. children before which <kw>newAnnotation</kw> is to be inserted. The first 
  447. annotation is numbered 1.</p></descr>
  448. </param>
  449. </parameters>
  450. <returns type='MathMLElement'>
  451. <descr><p>The <kw>MathMLAnnotationElement</kw> or 
  452. <kw>MathMLXMLAnnotationElement</kw> child of this element that represents
  453. the new annotation in the DOM.</p></descr></returns>
  454. <raises>
  455. <exception name='DOMException'>
  456. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newAnnotation</kw> is not a
  457. <kw>MathMLAnnotationElement</kw> or <kw>MathMLXMLAnnotationElement</kw>.</p>
  458. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  459. than the current number of <kw role="element">annotation</kw> or 
  460. <kw role="element">annotation-xml</kw> children of this <kw role="element">
  461. semantics</kw> element.</p></descr></exception>
  462. </raises>
  463. </method>
  464. <method name='setAnnotation'>
  465. <descr><p>This method allows setting or replacement of the 
  466. <kw>index</kw>-th <quote>alternate</quote> content associated with a 
  467. <kw role="element">semantics</kw> element.  If there is already an 
  468. <kw role="element">annotation</kw> or <kw role="element">annotation-xml</kw>
  469. element with this index, it is replaced by <kw>newAnnotation</kw>.</p></descr>
  470. <parameters>
  471. <param name='newAnnotation' type='MathMLElement' attr='in'>
  472. <descr><p>A <kw>MathMLAnnotationElement</kw> or 
  473. <kw>MathMLXMLAnnotationElement</kw> representing the new value of the <kw>index</kw>-th <kw role="element">annotation</kw> or <kw role="element">
  474. annotation-xml</kw> child of this <kw role="element">semantics</kw> element.</p></descr>
  475. </param>
  476. <param name='index' type='unsigned long' attr='in'>
  477. <descr><p>The position in the list of 
  478. <kw role="element">annotation</kw> or <kw role="element">annotation-xml</kw> 
  479. children of this <kw role="element">semantics</kw> element that is to be
  480. occupied by <kw>newAnnotation</kw>. The first annotation element is numbered 
  481. 1.</p></descr>
  482. </param>
  483. </parameters>
  484. <returns type='MathMLElement'>
  485. <descr><p>The <kw>MathMLAnnotationElement</kw> or 
  486. <kw>MathMLXMLAnnotationElement</kw> child of this element that represents
  487. the new annotation in the DOM.</p></descr></returns>
  488. <raises>
  489. <exception name='DOMException'>
  490. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newAnnotation</kw> is not a
  491. <kw>MathMLAnnotationElement</kw> or <kw>MathMLXMLAnnotationElement</kw>.</p>
  492. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  493. than one more than the current number of <kw role="element">annotation</kw> 
  494. or <kw role="element">annotation-xml</kw> children of this <kw role="element">
  495. semantics</kw> element.</p></descr></exception>
  496. </raises>
  497. </method>
  498. <method name='deleteAnnotation'>
  499. <descr><p>A convenience method to delete the <kw>index</kw>-th 
  500. <quote>alternate</quote> content associated with this <kw role="element">
  501. semantics</kw> element.</p></descr>
  502. <parameters>
  503. <param name='index' type='unsigned long' attr='in'>
  504. <descr><p>The one-based index of the annotation being 
  505. deleted.</p></descr>
  506. </param>
  507. </parameters>
  508. <returns type='void'>
  509. <descr><p>None.</p></descr></returns>
  510. <raises>
  511. </raises>
  512. </method>
  513. <method name='removeAnnotation'>
  514. <descr><p>A convenience method to delete the <kw>index</kw>-th 
  515. <quote>alternate</quote> content associated with this <kw role="element">
  516. semantics</kw> element, and to return it to the caller.</p></descr>
  517. <parameters>
  518. <param name='index' type='unsigned long' attr='in'>
  519. <descr><p>The one-based index of the annotation being 
  520. deleted.</p></descr>
  521. </param>
  522. </parameters>
  523. <returns type='MathMLElement'>
  524. <descr><p>The <kw>MathMLAnnotationElement</kw> or
  525. <kw>MathMLXMLAnnotationElement</kw> being deleted.</p></descr></returns>
  526. <raises>
  527. </raises>
  528. </method>
  529. </interface>
  530.  
  531. <interface name='MathMLAnnotationElement' inherits='MathMLElement' id='dom_AnnotationElement'>
  532. <descr><p>This interface represents the <intref ref="contm_annotation"><kw role="element">annotation</kw></intref>
  533. element of MathML.
  534. </p>
  535. <?generate-idl?>
  536. </descr>
  537. <attribute name='body' type='DOMString' readonly='no'>
  538. <descr><p>Provides access to the content of an <kw role="element">annotation</kw>
  539. element.</p></descr>
  540. </attribute>
  541. <attribute name='encoding' type='DOMString' readonly='no'>
  542. <descr><p>Provides access to the <intref ref="contm_attrib"><kw role="attrib">encoding</kw></intref>
  543. attribute of an <kw role="element">annotation</kw> element.</p></descr>
  544. </attribute>
  545. </interface>
  546.  
  547. <interface name='MathMLXMLAnnotationElement' inherits='MathMLElement' id='dom_XMLAnnotationElement'>
  548. <descr><p>This interface represents the <intref ref="contm_annotation-xml"><kw role="element">annotation-xml</kw></intref> 
  549. element of MathML.</p>
  550. <?generate-idl?>
  551. </descr>
  552. <attribute name='encoding' type='DOMString' readonly='no'>
  553. <descr><p>Provides access to the <intref ref="contm_attrib"><kw role="attrib">encoding</kw></intref>
  554. attribute of an <kw role="element">xml-annotation</kw> element.</p></descr>
  555. </attribute>
  556. </interface>
  557.  
  558. </definitions>
  559. </div3>
  560.  
  561. <div3><head>Presentation Elements</head>
  562. <definitions>
  563.  
  564. <interface name='MathMLPresentationElement' inherits='MathMLElement' id='dom_PresentationElement'>
  565. <descr><p>This interface is provided to serve as a base interface for
  566. various MathML Presentation interfaces. It contains no new attributes or
  567. methods at this time; however, it is felt that the distinction between
  568. Presentation and Content MathML entities should be indicated in the
  569. MathMLElement hierarchy. In particular, future versions of the MathML DOM
  570. may add functionality on this interface; it may also serve as an aid to
  571. implementors.
  572. </p>
  573. <?generate-idl?>
  574. </descr>
  575. </interface>
  576. </definitions>
  577.  
  578. <div4><head>Leaf Presentation Element Interfaces</head>
  579. <definitions>
  580.  
  581. <interface name='MathMLGlyphElement' inherits='MathMLPresentationElement' id='dom_GlyphElement'>
  582. <descr><p>This interface supports the <intref ref="presm_mglyph"><kw role="element">mglyph</kw></intref> element
  583. <specref ref="presm_mglyph"/>.
  584. </p>
  585. <?generate-idl?>
  586. </descr>
  587. <attribute name='alt' type='DOMString' readonly='no'>
  588. <descr><p>A string giving an alternate name for the character.  Represents
  589. the <kw role="element">mglyph</kw>'s <kw role="attrib">alt</kw>
  590. attribute.</p></descr>
  591. </attribute>
  592. <attribute name='fontfamily' type='DOMString' readonly='no'>
  593. <descr><p>A string representing the font family.</p></descr>
  594. </attribute>
  595. <attribute name='index' type='unsigned long' readonly='no'>
  596. <descr><p>An unsigned integer giving the glyph's position within the font.</p></descr>
  597. </attribute>
  598. </interface>
  599.  
  600. <interface name='MathMLSpaceElement' inherits='MathMLPresentationElement' id='dom_SpaceElement'>
  601. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw>
  602. interface for the MathML <emph>space </emph>element <intref ref="presm_mspace"><kw role="element">mspace</kw></intref>.  
  603. Note that this is <emph>not</emph> derived from <intref ref="dom_PresentationToken"><kw>MathMLPresentationToken</kw></intref>, 
  604. despite the fact that <kw role="element">mspace</kw> is classified as a token element, 
  605. since it does not carry the attributes declared for
  606. <kw>MathMLPresentationToken</kw>.
  607. </p>
  608. <?generate-idl?>
  609. </descr>
  610. <attribute name='width' type='DOMString' readonly='no'>
  611. <descr><p>A string of the form <quote><emph>number</emph> 
  612. <emph>h-unit</emph></quote>; represents the <kw role="attrib">width</kw> 
  613. attribute for the <kw role="element">mspace</kw> element, if specified.</p></descr>
  614. </attribute>
  615. <attribute name='height' type='DOMString' readonly='no'>
  616. <descr><p>A string of the form <quote><emph>number</emph> 
  617. <emph>v-unit</emph></quote>; represents the <kw role="attrib">height</kw> 
  618. attribute for the <kw role="element">mspace</kw> element, if specified.</p></descr>
  619. </attribute>
  620. <attribute name='depth' type='DOMString' readonly='no'>
  621. <descr><p>A string of the form <quote><emph>number</emph> 
  622. <emph>v-unit</emph></quote>; represents the <kw role="attrib">depth</kw> 
  623. attribute for the <kw role="element">mspace</kw> element, if specified.</p></descr>
  624. </attribute>
  625. </interface>
  626.  
  627. </definitions>
  628. </div4>
  629.  
  630. <div4><head>Presentation Token Element Interfaces</head>
  631.  
  632. <p>Interfaces representing the MathML Presentation token elements that
  633.    may have content are described here.</p>
  634.  
  635. <definitions>
  636. <interface name='MathMLPresentationToken' inherits='MathMLPresentationElement' id='dom_PresentationToken'>
  637. <descr><p>This interface extends the <intref ref="dom_Element"><kw>MathMLElement</kw></intref> interface to 
  638. include access for attributes specific to text presentation. It serves as
  639. the base class for all MathML presentation token elements. Access to the
  640. body of the element is via the <kw role="attrib">nodeValue</kw> attribute 
  641. inherited from <kw>Node</kw>. Elements that expose only the core presentation 
  642. token attributes are directly supported by this object. These elements are: 
  643. <glist>
  644. <gitem><label><intref ref="presm_mi"><kw role="element">mi</kw></intref></label> 
  645. <def><p>identifier element</p></def>
  646. </gitem> 
  647. <gitem><label><intref ref="presm_mn"><kw role="element">mn</kw></intref></label> 
  648. <def><p>number element</p></def>
  649. </gitem> 
  650. <gitem><label><intref ref="presm_mtext"><kw role="element">mtext</kw></intref></label> 
  651. <def><p>text element</p></def>
  652. </gitem> 
  653. </glist>
  654. </p>
  655. <?generate-idl?>
  656. </descr>
  657. <attribute name='mathvariant' type='DOMString' readonly='no'>
  658. <descr><p>The <intref ref="presm_commatt"><kw role="attrib">mathvariant</kw></intref> attribute for the element, if
  659. specified. One of the values <kw role="attval">normal</kw>, <kw role="attval">bold</kw>, <kw role="attval">italic</kw>, <kw role="attval">bold-italic</kw>, <kw role="attval">double-struck</kw>, <kw role="attval">bold-fraktur</kw>,
  660. <kw role="attval">script</kw>, <kw role="attval">bold-script</kw>, <kw role="attval">fraktur</kw>, <kw role="attval">sans-serif</kw>, <kw role="attval">bold-sans-serif</kw>, <kw role="attval">sans-serif-italic</kw>, <kw role="attval">sans-serif-bold-italic</kw>,
  661. or <kw role="attval">monospace</kw>.</p></descr>
  662. </attribute>
  663. <attribute name='mathsize' type='DOMString' readonly='no'>
  664. <descr><p>The <intref ref="presm_commatt"><kw role="attrib">mathsize</kw></intref> attribute for the element, if
  665. specified. Either <kw role="attval">small</kw>, <kw role="attval">normal</kw> or <kw role="attval">big</kw>, or of the
  666. form <kw role="attval">number v-unit</kw>.</p></descr>
  667. </attribute>
  668. <attribute name='mathfamily' type='DOMString' readonly='no'>
  669. <descr><p>The <intref ref="presm_commatt"><kw role="attrib">mathfamily</kw></intref> attribute for the element, if
  670. specified. This should be a string of the form <kw role="attval">css-fontfamily</kw>.</p></descr>
  671. </attribute>
  672. <attribute name='mathcolor' type='DOMString' readonly='no'>
  673. <descr><p>The <intref ref="presm_commatt"><kw role="attrib">mathcolor</kw></intref> attribute for the element, if 
  674. specified. The <kw>DOMString</kw> returned should be in the form of a CSS color spec.</p></descr>
  675. </attribute>
  676. <attribute name='mathbackground' type='DOMString' readonly='no'>
  677. <descr><p>The <intref ref="presm_commatt"><kw role="attrib">mathbackground</kw></intref> attribute for the element, if 
  678. specified. The <kw>DOMString</kw> returned should be in the form of a CSS color spec.</p></descr>
  679. </attribute>
  680. <attribute name='contents' type='MathMLNodeList' readonly='yes'>
  681. <descr><p>Returns the child <kw>Nodes</kw> of the 
  682. element. These should consist only of <kw>Text</kw> nodes and possibly
  683. <kw>MathMLGlyphElements</kw>. Should behave the same as the base class's 
  684. <kw>Node::childNodes</kw> attribute; however, it is provided here for clarity.</p></descr>
  685. </attribute>
  686. </interface>
  687.  
  688. <interface name='MathMLOperatorElement' inherits='MathMLPresentationToken' id='dom_OperatorElement'>
  689. <descr><p>This interface extends the <kw>MathMLPresentationToken</kw>
  690. interface for the MathML <emph>operator</emph> element <intref ref="presm_mo"><kw role="element">mo</kw></intref>.
  691. </p>
  692. <?generate-idl?>
  693. </descr>
  694. <attribute name='form' type='DOMString' readonly='no'>
  695. <descr><p>The <kw role="attrib">form</kw> attribute (<kw role="attval">prefix</kw>, 
  696. <kw role="attval">infix</kw> or <kw role="attval">postfix</kw>) for the 
  697. <kw role="element">mo</kw> element, if specified.</p></descr>
  698. </attribute>
  699. <attribute name='fence' type='DOMString' readonly='no'>
  700. <descr><p>The <kw role="attrib">fence</kw> attribute 
  701. (<kw role="attval">true</kw> or <kw role="attval">false</kw>)
  702. for the <kw role="element">mo</kw> element, if specified.</p></descr>
  703. </attribute>
  704. <attribute name='separator' type='DOMString' readonly='no'>
  705. <descr><p>The <kw role="attrib">separator</kw> attribute 
  706. (<kw role="attval">true</kw> or <kw role="attval">false</kw>) for the 
  707. <kw role="element">mo</kw> element, if specified.</p></descr>
  708. </attribute>
  709. <attribute name='lspace' type='DOMString' readonly='no'>
  710. <descr><p>The <kw role="attrib">lspace</kw> attribute (spacing to left) of
  711. the <kw role="element">mo</kw> element, if specified.</p></descr>
  712. </attribute>
  713. <attribute name='rspace' type='DOMString' readonly='no'>
  714. <descr><p>The <kw role="attrib">rspace</kw> attribute (spacing to right) of the
  715. <kw role="element">mo</kw> element, if specified.</p></descr>
  716. </attribute>
  717. <attribute name='stretchy' type='DOMString' readonly='no'>
  718. <descr><p>The <kw role="attrib">stretchy</kw> attribute 
  719. (<kw role="attval">true</kw> or <kw role="attval">false</kw>) for the 
  720. <kw role="element">mo</kw> element, if specified.</p></descr>
  721. </attribute>
  722. <attribute name='symmetric' type='DOMString' readonly='no'>
  723. <descr><p>The <kw role="attrib">symmetric</kw> attribute 
  724. (<kw role="attval">true</kw> or <kw role="attval">false</kw>) for the 
  725. <kw role="element">mo</kw> element, if specified.</p></descr>
  726. </attribute>
  727. <attribute name='maxsize' type='DOMString' readonly='no'>
  728. <descr><p>The <kw role="attrib">maxsize</kw> attribute for the
  729. <kw role="element">mo</kw> element, if specified.</p></descr>
  730. </attribute>
  731. <attribute name='minsize' type='DOMString' readonly='no'>
  732. <descr><p>The <kw role="attrib">minsize</kw> attribute for the
  733. <kw role="element">mo</kw> element, if specified.</p></descr>
  734. </attribute>
  735. <attribute name='largeop' type='DOMString' readonly='no'>
  736. <descr><p>The <kw role="attrib">largeop</kw> attribute for the
  737. <kw role="element">mo</kw> element, if specified.</p></descr>
  738. </attribute>
  739. <attribute name='moveablelimits' type='DOMString' readonly='no'>
  740. <descr><p>The <kw role="attrib">moveablelimits</kw> 
  741. (<kw role="attval">true</kw> or <kw role="attval">false</kw>) attribute for the
  742. <kw role="element">mo</kw> element, if specified.</p></descr>
  743. </attribute>
  744. <attribute name='accent' type='DOMString' readonly='no'>
  745. <descr><p>The <kw role="attrib">accent</kw> attribute 
  746. (<kw role="attval">true</kw> or <kw role="attval">false</kw>) for the 
  747. <kw role="element">mo</kw> element, if specified.</p></descr>
  748. </attribute>
  749. </interface>
  750.  
  751. <interface name='MathMLStringLitElement' inherits='MathMLPresentationToken' id='dom_StringLitElement'>
  752. <descr><p>This interface extends the <kw>MathMLPresentationToken</kw>
  753. interface for the MathML <emph>string literal</emph> element 
  754. <intref ref="presm_ms"><kw role="element">ms</kw></intref>.
  755. </p>
  756. <?generate-idl?>
  757. </descr>
  758. <attribute name='lquote' type='DOMString' readonly='no'>
  759. <descr><p>A string giving the opening delimiter for the string literal; 
  760. represents the <kw role="attrib">lquote</kw> attribute for the 
  761. <kw role="element">ms</kw> element, if specified.</p></descr>
  762. </attribute>
  763. <attribute name='rquote' type='DOMString' readonly='no'>
  764. <descr><p>A string giving the closing delimiter for the string literal; 
  765. represents the <kw role="attrib">rquote</kw> attribute for the 
  766. <kw role="element">ms</kw> element, if specified.</p></descr>
  767. </attribute>
  768. </interface>
  769.  
  770. </definitions>
  771. </div4>
  772.  
  773. <div4><head>Presentation Container Interfaces</head>
  774.  
  775. <p>Interfaces designed to represent MathML Presentation elements that can contain 
  776. arbitrary numbers of child <kw>MathMLElements</kw> are included under the heading 
  777. of Presentation Container Elements.</p>
  778.  
  779. <definitions>
  780. <interface name='MathMLPresentationContainer' inherits='MathMLPresentationElement, MathMLContainer' id='dom_PresentationContainer'>
  781. <descr><p>This interface represents MathML Presentation elements that may 
  782. contain arbitrarily many child elements. Elements directly supported by this interface
  783. include <intref ref="presm_mrow"><kw role="element">mrow</kw></intref>, <intref ref="presm_mphantom"><kw role="element">mphantom</kw></intref> and <intref ref="presm_merror"><kw role="element">merror</kw></intref>.
  784. All attributes and methods are derived from the base <kw>MathMLPresentationElement</kw> and <kw>MathMLContainer</kw> interfaces.</p>
  785. <?generate-idl?>
  786. </descr>
  787. </interface>
  788.  
  789. <interface name='MathMLStyleElement' inherits='MathMLPresentationContainer' id='dom_StyleElement'>
  790. <descr><p>This interface extends the <intref ref="dom_Element"><kw>MathMLElement</kw></intref> interface for 
  791. the MathML <emph>style</emph> element <intref ref="presm_mstyle"><kw role="element">mstyle</kw></intref>.
  792. While the <kw role="element">mstyle</kw> element may contain any 
  793. <emph>attributes</emph> allowable on any MathML presentation element, only 
  794. <emph>attributes</emph> specific to the <kw role="element">mstyle</kw>
  795. element are included in the interface below. Other attributes should be 
  796. accessed using the methods on the base <kw>Element</kw> class, particularly 
  797. the <kw>Element::getAttribute</kw> and <kw>Element::setAttribute</kw>
  798. methods, or even the <kw>Node::attributes</kw> attribute to access all of 
  799. them at once. Not only does this obviate a lengthy list below, but it seems 
  800. likely that most implementations will find this a considerably more useful 
  801. interface to a <kw>MathMLStyleElement</kw>.
  802. </p>
  803. <?generate-idl?>
  804. </descr>
  805. <attribute name='scriptlevel' type='DOMString' readonly='no'>
  806. <descr><p>A string of the form <quote><emph>+/- unsigned 
  807. integer</emph></quote>; represents the <kw role="attrib">scriptlevel</kw> 
  808. attribute for the <kw role="element">mstyle</kw> element, if specified. See 
  809. also the discussion of this attribute.</p></descr>
  810. </attribute>
  811. <attribute name='displaystyle' type='DOMString' readonly='no'>
  812. <descr><p>Either <kw role="attval">true</kw> or <kw role="attval">false</kw>; 
  813. a string representing the <kw role="attrib">displaystyle</kw> attribute for the 
  814. <kw role="element">mstyle</kw> element, if specified. See also the discussion
  815. of this attribute.</p></descr>
  816. </attribute>
  817. <attribute name='scriptsizemultiplier' type='DOMString' readonly='no'>
  818. <descr><p>A string of the form <quote><emph>number</emph></quote>;
  819. represents the <kw role="attrib">scriptsizemultiplier</kw> attribute for the 
  820. <kw role="element">mstyle</kw> element, if specified. See also the discussion
  821. of this attribute.</p></descr>
  822. </attribute>
  823. <attribute name='scriptminsize' type='DOMString' readonly='no'>
  824. <descr><p>A string of the form <quote><emph>number</emph> 
  825. <emph>v-unit</emph></quote>; represents the 
  826. <kw role="attrib">scriptminsize</kw> attribute for the 
  827. <kw role="element">mstyle</kw> element, if specified. See also the discussion 
  828. of this attribute.</p></descr>
  829. </attribute>
  830. <attribute name='color' type='DOMString' readonly='no'>
  831. <descr><p>A string representation of a color; represents the 
  832. <intref ref="presm_commatt"><kw role="attrib">color</kw></intref> attribute for the <kw role="element">mstyle</kw> 
  833. element, if specified. See also the discussion of this attribute.</p></descr>
  834. </attribute>
  835. <attribute name='background' type='DOMString' readonly='no'>
  836. <descr><p>A string representation of a color or the string 
  837. <kw role="attval">transparent</kw>; represents the 
  838. <kw role="attrib">background</kw> attribute for the 
  839. <kw role="element">mstyle</kw> element, if specified. See also the discussion 
  840. of this attribute.</p></descr>
  841. </attribute>
  842. </interface>
  843.  
  844. <interface name='MathMLPaddedElement' inherits='MathMLPresentationContainer' id='dom_PaddedElement'>
  845. <descr><p>This interface extends the <intref ref="dom_Element"><kw>MathMLElement</kw></intref> interface for 
  846. the MathML <emph>spacing adjustment</emph> element 
  847. <intref ref="presm_mpadded"><kw role="element">mpadded</kw></intref>.
  848. </p>
  849. <?generate-idl?>
  850. </descr>
  851. <attribute name='width' type='DOMString' readonly='no'>
  852. <descr><p>A string representing the total <kw role="attrib">width</kw> of the 
  853. <kw role="element">mpadded</kw> element, if specified. See also the discussion
  854. of this attribute.</p></descr>
  855. </attribute>
  856. <attribute name='lspace' type='DOMString' readonly='no'>
  857. <descr><p>A string representing the <kw role="attrib">lspace</kw> attribute - 
  858. the additional space to the left - of the <kw role="element">mpadded</kw>
  859. element, if specified. See also the discussion of this 
  860. attribute.</p></descr>
  861. </attribute>
  862. <attribute name='height' type='DOMString' readonly='no'>
  863. <descr><p>A string representing the <kw role="attrib">height</kw> above the 
  864. baseline of the <kw role="element">mpadded</kw> element, if specified. See 
  865. also the discussion of this attribute.</p></descr>
  866. </attribute>
  867. <attribute name='depth' type='DOMString' readonly='no'>
  868. <descr><p>A string representing the <kw role="attrib">depth</kw> beneath the 
  869. baseline of the <kw role="element">mpadded</kw> element, if specified. See 
  870. also the discussion of this attribute.</p></descr>
  871. </attribute>
  872. </interface>
  873.  
  874. <interface name='MathMLFencedElement' inherits='MathMLPresentationContainer' id='dom_FencedElement'>
  875. <descr><p>This interface extends the
  876. <kw>MathMLPresentationContainer</kw> interface for the MathML
  877. <emph>fenced content</emph> element <intref ref="presm_mfenced"><kw role="element">mfenced</kw></intref>.
  878. </p>
  879. <?generate-idl?>
  880. </descr>
  881. <attribute name='open' type='DOMString' readonly='no'>
  882. <descr><p>A string representing the <emph>opening-fence</emph> for the 
  883. <kw role="element">mfenced</kw> element, if specified; this is the element's 
  884. <kw role="attrib">open</kw> attribute.</p></descr>
  885. </attribute>
  886. <attribute name='close' type='DOMString' readonly='no'>
  887. <descr><p>A string representing the <emph>opening-fence</emph> for the 
  888. <kw role="element">mfenced</kw> element, if specified; this is the element's 
  889. <kw role="attrib">close</kw> attribute.</p></descr>
  890. </attribute>
  891. <attribute name='separators' type='DOMString' readonly='no'>
  892. <descr><p>A string representing any separating characters inside the 
  893. <kw role="element">mfenced</kw> element, if specified; this is the element's 
  894. <kw role="attrib">separators</kw> attribute.</p></descr>
  895. </attribute>
  896. </interface>
  897.  
  898. <interface name='MathMLEncloseElement' inherits='MathMLPresentationContainer' id='dom_EncloseElement'>
  899. <descr><p>This interface supports the <intref ref="presm_menclose"><kw role="element">menclose</kw></intref>
  900. element <specref ref="presm_menclose"/>.
  901. </p>
  902. <?generate-idl?>
  903. </descr>
  904. <attribute name='notation' type='DOMString' readonly='no'>
  905. <descr><p>A string giving a name for the notation enclosing 
  906. the element's contents. Represents the <kw role="attrib">notation</kw> attribute
  907. of the <kw role="element">menclose</kw>. Allowed values are 
  908. <kw role="attval">longdiv</kw>,
  909. <kw role="attval">actuarial</kw>,
  910. <kw role="attval">radical</kw>.</p></descr>
  911. </attribute>
  912. </interface>
  913.  
  914. <interface name='MathMLActionElement' inherits='MathMLPresentationContainer' id='dom_ActionElement'>
  915. <descr><p>This interface extends the 
  916. <kw>MathMLPresentationContainer</kw> interface for the MathML 
  917. <emph>enlivening expression</emph> element <intref ref="presm_maction"><kw role="element">maction</kw></intref>.
  918. </p>
  919. <?generate-idl?>
  920. </descr>
  921. <attribute name='actiontype' type='DOMString' readonly='no'>
  922. <descr><p>A string specifying the action. Possible values include
  923. <kw role="attval">toggle</kw>, 
  924. <kw role="attval">statusline</kw>, 
  925. <kw role="attval">tooltip</kw>, 
  926. <kw role="attval">highlight</kw>, and
  927. <kw role="attval">menu</kw>.</p></descr>
  928. </attribute>
  929. <attribute name='selection' type='DOMString' readonly='no'>
  930. <descr><p>A string specifying an integer that selects the current 
  931. subject of the action.</p></descr>
  932. </attribute>
  933. </interface>
  934.  
  935. </definitions>
  936. </div4>
  937.  
  938. <div4><head>Presentation Schemata Interfaces</head>
  939. <definitions>
  940. <interface name='MathMLFractionElement' inherits='MathMLPresentationElement' id='dom_FractionElement'>
  941. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  942. the MathML <emph>fraction</emph> element <intref ref="presm_mfrac"><kw role="element">mfrac</kw></intref>.
  943. </p>
  944. <?generate-idl?>
  945. </descr>
  946. <attribute name='linethickness' type='DOMString' readonly='no'>
  947. <descr><p>A string representing the <kw role="attrib">linethickness</kw> 
  948. attribute of the <kw role="element">mfrac</kw>, if specified.</p></descr>
  949. </attribute>
  950. <attribute name='numerator' type='MathMLElement' readonly='no'>
  951. <descr><p>The first child <intref ref="dom_Element"><kw>MathMLElement</kw></intref> of the 
  952. <kw>MathMLFractionElement</kw>; represents the numerator of the represented 
  953. fraction.</p></descr>
  954. </attribute>
  955. <attribute name='denominator' type='MathMLElement' readonly='no'>
  956. <descr><p>The second child <kw>MathMLElement</kw> of the 
  957. <kw>MathMLFractionElement</kw>; represents the denominator of the
  958. represented fraction.</p></descr>
  959. </attribute>
  960. </interface>
  961.  
  962. <interface name='MathMLRadicalElement' inherits='MathMLPresentationElement' id='dom_RadicalElement'>
  963. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  964. the MathML <emph>radical</emph> and <emph>square root</emph> elements 
  965. <kw role="element">mroot</kw> and <intref ref="presm_mroot"><kw role="element">msqrt</kw></intref>.
  966. </p>
  967. <?generate-idl?>
  968. </descr>
  969. <attribute name='radicand' type='MathMLElement' readonly='no'>
  970. <descr><p>The first child <intref ref="dom_Element"><kw>MathMLElement</kw></intref> of the 
  971. <kw>MathMLRadicalElement</kw>; represents the <emph>base</emph> of the
  972. represented radical.</p></descr>
  973. </attribute>
  974. <attribute name='index' type='MathMLElement' readonly='no'>
  975. <descr><p>The second child <kw>MathMLElement</kw> of the 
  976. <kw>MathMLRadicalElement</kw>; represents the <emph>index</emph> of the
  977. represented radical. This must be <kw>null</kw> for 
  978. <kw role="element">msqrt</kw> elements.</p></descr>
  979. </attribute>
  980. </interface>
  981.  
  982. <interface name='MathMLScriptElement' inherits='MathMLPresentationElement' id='dom_ScriptElement'>
  983. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  984. the MathML <emph>subscript</emph>, <emph>superscript</emph> and 
  985. <emph>subscript-superscript pair</emph> elements
  986. <intref ref="presm_msub"><kw role="element">msub</kw></intref>, <intref ref="presm_msup"><kw role="element">msup</kw></intref>, and 
  987. <intref ref="presm_msubsup"><kw role="element">msubsup</kw></intref>.
  988. </p>
  989. <?generate-idl?>
  990. </descr>
  991. <attribute name='subscriptshift' type='DOMString' readonly='no'>
  992. <descr><p>A string representing the minimum amount to shift the baseline of 
  993. the <emph>subscript</emph> down, if specified; this is the element's
  994. <kw role="attrib">subscriptshift</kw> attribute. This must return <kw>null</kw>
  995. for an <kw role="element">msup</kw>.</p></descr>
  996. </attribute>
  997. <attribute name='superscriptshift' type='DOMString' readonly='no'>
  998. <descr><p>A string representing the minimum amount to shift the baseline of 
  999. the <emph>superscript</emph> up, if specified; this is the element's
  1000. <kw role="attrib">superscriptshift</kw> attribute. This must return 
  1001. <kw>null</kw> for a <kw role="element">msub</kw>.</p></descr>
  1002. </attribute>
  1003. <attribute name='base' type='MathMLElement' readonly='no'>
  1004. <descr><p>A <intref ref="dom_Element"><kw>MathMLElement</kw></intref> representing the <emph>base</emph> of
  1005. the script. This is the first child of the element.</p></descr>
  1006. </attribute>
  1007. <attribute name='subscript' type='MathMLElement' readonly='no'>
  1008. <descr><p>A <kw>MathMLElement</kw> representing the <emph>subscript</emph>
  1009. of the script. This is the second child of a <kw role="element">msub</kw> 
  1010. or <kw role="element">msubsup</kw>; retrieval must return <kw>null</kw>
  1011. for an <kw role="element">msup</kw>.</p></descr>
  1012. <setraises>
  1013. <exception name='DOMException'>
  1014. <descr><p>HIERARCHY_REQUEST_ERR: Raised when the element is 
  1015. a <kw role="element">msup</kw>.</p></descr></exception>
  1016. </setraises>
  1017. </attribute>
  1018. <attribute name='superscript' type='MathMLElement' readonly='no'>
  1019. <descr><p>A <kw>MathMLElement</kw> representing the 
  1020. <emph>superscript</emph> of the script. This is the second child of a 
  1021. <kw role="element">msup</kw> or the third child of a 
  1022. <kw role="element">msubsup</kw>; retrieval must return <kw>null</kw> for an 
  1023. <kw role="element">msub</kw>.</p> </descr>
  1024. <setraises>
  1025. <exception name='DOMException'>
  1026. <descr><p>HIERARCHY_REQUEST_ERR: Raised when the element is 
  1027. a <kw role="element">msub</kw>.</p></descr></exception>
  1028. </setraises>
  1029. </attribute>
  1030. </interface>
  1031.  
  1032. <interface name='MathMLUnderOverElement' inherits='MathMLPresentationElement' id='dom_UnderOverElement'>
  1033. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  1034. the MathML <emph>underscript</emph>, <emph>overscript</emph> and 
  1035. <emph>overscript-underscript pair</emph> elements 
  1036. <intref ref="presm_munder"><kw role="element">munder</kw></intref>, <intref ref="presm_mover"><kw role="element">mover</kw></intref> and 
  1037. <intref ref="presm_munderover"><kw role="element">munderover</kw></intref>.
  1038. </p>
  1039. <?generate-idl?>
  1040. </descr>
  1041. <attribute name='accentunder' type='DOMString' readonly='no'>
  1042. <descr><p>Either <kw role="attval">true</kw> or <kw role="attval">false</kw> if
  1043. present; a string controlling whether <emph>underscript</emph> is drawn as an 
  1044. <quote>accent</quote> or as a <quote>limit</quote>, if specified; this is the 
  1045. element's <kw role="attrib">accentunder</kw> attribute. This must return 
  1046. <kw>null</kw> for an <kw role="element">mover</kw>.</p></descr>
  1047. </attribute>
  1048. <attribute name='accent' type='DOMString' readonly='no'>
  1049. <descr><p>Either <kw role="attval">true</kw> or <kw role="attval">false</kw> if
  1050. present; a string controlling whether <emph>overscript</emph> is drawn as an 
  1051. <quote>accent</quote> or as a <quote>limit</quote>, if specified; this is the 
  1052. element's <kw role="attrib">accent</kw> attribute. This must return 
  1053. <kw>null</kw> for an <kw role="element">munder</kw>.</p></descr>
  1054. </attribute>
  1055. <attribute name='base' type='MathMLElement' readonly='no'>
  1056. <descr><p>A <intref ref="dom_Element"><kw>MathMLElement</kw></intref> representing the <emph>base</emph> of
  1057. the script. This is the first child of the element.</p></descr>
  1058. </attribute>
  1059. <attribute name='underscript' type='MathMLElement' readonly='no'>
  1060. <descr><p>A <kw>MathMLElement</kw> representing the 
  1061. <emph>underscript</emph> of the script. This is the second child of a 
  1062. <kw role="element">munder</kw> or <kw role="element">munderover</kw>;
  1063. retrieval must return <kw>null</kw> for an <kw role="element">mover</kw>.</p></descr>
  1064. <setraises>
  1065. <exception name='DOMException'>
  1066. <descr><p>HIERARCHY_REQUEST_ERR: Raised when the element is a 
  1067. <kw role="element">mover</kw>.</p></descr></exception>
  1068. </setraises>
  1069. </attribute>
  1070. <attribute name='overscript' type='MathMLElement' readonly='no'>
  1071. <descr><p>A <kw>MathMLElement</kw> representing the 
  1072. <emph>overscript</emph> of the script. This is the second child of a 
  1073. <kw role="element">mover</kw> or the third child of a <kw role="element">
  1074. munderover</kw>; retrieval must return <kw>null</kw> for an 
  1075. <kw role="element">munder</kw>.</p></descr>
  1076. <setraises>
  1077. <exception name='DOMException'>
  1078. <descr><p>HIERARCHY_REQUEST_ERR: Raised when the element is a 
  1079. <kw role="element">munder</kw>.</p></descr></exception>
  1080. </setraises>
  1081. </attribute>
  1082. </interface>
  1083.  
  1084. <interface name='MathMLMultiScriptsElement' inherits='MathMLPresentationElement' id='dom_MultiScriptsElement'>
  1085. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  1086. the MathML <emph>multiscripts</emph> (including prescripts or 
  1087. tensors) element <intref ref="presm_mmultiscripts"><kw role="element">mmultiscripts</kw></intref>.
  1088. </p>
  1089. <?generate-idl?>
  1090. </descr>
  1091. <attribute name='subscriptshift' type='DOMString' readonly='no'>
  1092. <descr><p>A string representing the minimum amount to shift the baseline of 
  1093. the <emph>subscripts</emph> down, if specified; this is the element's
  1094. <kw role="attrib">subscriptshift</kw> attribute.</p></descr>
  1095. </attribute>
  1096. <attribute name='superscriptshift' type='DOMString' readonly='no'>
  1097. <descr><p>A string representing the minimum amount to shift the baseline of 
  1098. the <emph>superscripts</emph> up, if specified; this is the element's
  1099. <kw role="attrib">superscriptshift</kw> attribute.</p></descr>
  1100. </attribute>
  1101. <attribute name='base' type='MathMLElement' readonly='no'>
  1102. <descr><p>A <intref ref="dom_Element"><kw>MathMLElement</kw></intref> representing the <emph>base</emph> of
  1103. the script. This is the first child of the element.</p></descr>
  1104. </attribute>
  1105. <attribute name='prescripts' type='MathMLNodeList' readonly='yes'>
  1106. <descr><p>A <kw>NodeList</kw> representing the <emph>prescripts</emph> of
  1107. the script, which appear in the order described by the expression 
  1108. <emph>(prescript presuperscript)*</emph>. This is the same as traversing 
  1109. the contents of the <kw>NodeList</kw> returned by 
  1110. <code>Node::childNodes()</code> from the <kw>Node</kw> following the 
  1111. <kw role="emptytag">mprescripts</kw> (if present) to the end of the 
  1112. list.</p></descr>
  1113. </attribute>
  1114. <attribute name='scripts' type='MathMLNodeList' readonly='yes'>
  1115. <descr><p>A <kw>MathMLNodeList</kw> representing the <emph>scripts</emph> of the
  1116. script, which appear in the order described by the expression <emph>(script
  1117. superscript)*</emph>. This is the same as traversing the contents of the 
  1118. <kw>NodeList</kw> returned by <code>Node::childNodes()</code> from the first 
  1119. <kw>Node</kw> up to and including the <kw>Node</kw> preceding the 
  1120. <kw role="emptytag">mprescripts</kw> (if present).</p></descr>
  1121. </attribute>
  1122. <attribute name='numprescriptcolumns' type='unsigned long' readonly='yes'>
  1123. <descr><p>The number of script/subscript columns preceding (to the left of) 
  1124. the <emph>base</emph>. Should always be half of 
  1125. <code>getprescripts().length()</code></p></descr>
  1126. </attribute>
  1127. <attribute name='numscriptcolumns' type='unsigned long' readonly='yes'>
  1128. <descr><p>The number of script/subscript columns following (to the right 
  1129. of) the <emph>base</emph>. Should always be half of 
  1130. <code>getscripts().length()</code></p></descr>
  1131. </attribute>
  1132. <method name='getPreSubScript'>
  1133. <descr><p>A convenience method to retrieve <emph>pre-subscript</emph>
  1134. children of the element, referenced by column index .</p></descr>
  1135. <parameters>
  1136. <param name='colIndex' type='unsigned long' attr='in'>
  1137. <descr><p>Column index of <emph>prescript</emph>
  1138. (where 1 represents the leftmost <emph>prescript</emph> column).</p></descr>
  1139. </param>
  1140. </parameters>
  1141. <returns type='MathMLElement'>
  1142. <descr><p>Returns the <kw>MathMLElement</kw> representing the 
  1143. <emph>colIndex</emph>-th presubscript (to the left of the 
  1144. <emph>base</emph>, counting from 1 at the far left). Note that this may be 
  1145. the <kw>MathMLElement</kw> corresponding to the special element 
  1146. <kw role="emptytag">none</kw> in the case of a <quote>missing</quote> 
  1147. <emph>presubscript</emph> (see the discussion of 
  1148. <kw role="element">mmultiscripts</kw>), or it may be <kw>null</kw> if
  1149. <kw>colIndex</kw> is out of range for the element.</p></descr></returns>
  1150. <raises>
  1151. </raises>
  1152. </method>
  1153. <method name='getSubScript'>
  1154. <descr><p>A convenience method to retrieve <emph>subscript</emph>
  1155. children of the element, referenced by column index.</p></descr>
  1156. <parameters>
  1157. <param name='colIndex' type='unsigned long' attr='in'>
  1158. <descr><p>Column index of <emph>script</emph> (where 1 represents the 
  1159. leftmost <emph>script</emph> column, the first to the right 
  1160. of the <emph>base</emph>).</p></descr>
  1161. </param>
  1162. </parameters>
  1163. <returns type='MathMLElement'>
  1164. <descr><p>Returns the <kw>MathMLElement</kw> representing the 
  1165. <emph>colIndex</emph>-th subscript to the right of the 
  1166. <emph>base</emph>. Note that this may be 
  1167. the <kw>MathMLElement</kw> corresponding to the special element 
  1168. <kw role="emptytag">none</kw> in the case of a <quote>missing</quote> 
  1169. <emph>subscript</emph> (see the discussion of 
  1170. <kw role="element">mmultiscripts</kw>), or it may be <kw>null</kw> if
  1171. <kw>colIndex</kw> is out of range for the element.</p></descr></returns>
  1172. <raises>
  1173. </raises>
  1174. </method>
  1175. <method name='getPreSuperScript'>
  1176. <descr><p>A convenience method to retrieve <emph>pre-superscript</emph>
  1177. children of the element, referenced by column index .</p></descr>
  1178. <parameters>
  1179. <param name='colIndex' type='unsigned long' attr='in'>
  1180. <descr><p>Column index of <emph>pre-superscript</emph> (where 1 represents the 
  1181. leftmost <emph>prescript</emph> column).</p></descr>
  1182. </param>
  1183. </parameters>
  1184. <returns type='MathMLElement'>
  1185. <descr><p>Returns the <kw>MathMLElement</kw> representing the 
  1186. <emph>colIndex</emph>-th presuperscript (to the left of 
  1187. the <emph>base</emph>, counting from 1 at the far left). Note that this may be 
  1188. the <kw>MathMLElement</kw> corresponding to the special element 
  1189. <kw role="emptytag">none</kw> in the case of a <quote>missing</quote> 
  1190. <emph>presuperscript</emph> (see the discussion of 
  1191. <kw role="element">mmultiscripts</kw>), or it may be <kw>null</kw> if
  1192. <kw>colIndex</kw> is out of range for the element.</p></descr></returns>
  1193. <raises>
  1194. </raises>
  1195. </method>
  1196. <method name='getSuperScript'>
  1197. <descr><p>A convenience method to retrieve <emph>superscript</emph>
  1198. children of the element, referenced by column index .</p></descr>
  1199. <parameters>
  1200. <param name='colIndex' type='unsigned long' attr='in'>
  1201. <descr><p>Column index of <emph>script</emph> (where 1 represents the 
  1202. leftmost <emph>script</emph> column, the first to the right of the 
  1203. <emph>base</emph>)</p></descr>
  1204. </param>
  1205. </parameters>
  1206. <returns type='MathMLElement'>
  1207. <descr><p>Returns the <kw>MathMLElement</kw> representing the 
  1208. <emph>colIndex</emph>-th superscript to the right of the 
  1209. <emph>base</emph>. Note that this may be 
  1210. the <kw>MathMLElement</kw> corresponding to the special element 
  1211. <kw role="emptytag">none</kw> in the case of a <quote>missing</quote> 
  1212. <emph>superscript</emph> (see the discussion of 
  1213. <kw role="element">mmultiscripts</kw>), or it may be <kw>null</kw> if
  1214. <kw>colIndex</kw> is out of range for the element.</p></descr></returns>
  1215. <raises>
  1216. </raises>
  1217. </method>
  1218. <method name='insertPreSubScriptBefore'>
  1219. <descr><p>A convenience method to insert a <emph>pre-subscript</emph> before the position referenced by column index. If
  1220. <kw>colIndex</kw> is 0, the new <emph>pre-subscript</emph> is appended
  1221. as the last <emph>pre-subscript</emph> of the <kw role="element">
  1222. mmultiscripts</kw> element; if colIndex is 1, a new <emph>pre-subscript</emph> is prepended at the far left. Note that inserting a
  1223. new <emph>pre-subscript</emph> will cause the insertion of an empty
  1224. <emph>pre-superscript</emph> in the same column.</p></descr>
  1225. <parameters>
  1226. <param name='colIndex' type='unsigned long' attr='in'>
  1227. <descr><p>Column index of <emph>pre-subscript</emph> (where 1 represents the leftmost <emph>prescript</emph> column).</p></descr>
  1228. </param>
  1229. <param name='newScript' type='MathMLElement' attr='in'>
  1230. <descr><p>A <kw>MathMLElement</kw> representing 
  1231. the element to be inserted as a <emph>pre-subscript</emph>.</p></descr>
  1232. </param>
  1233. </parameters>
  1234. <returns type='MathMLElement'>
  1235. <descr><p>The <kw>MathMLElement</kw> child of this
  1236. <kw>MathMLMultiScriptsElement</kw> representing the new script in the DOM.</p></descr></returns>
  1237. <raises>
  1238. <exception name='DOMException'>
  1239. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1240. an element that cannot be a pre-subscript.</p>
  1241. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1242. than the number of <emph>pre-scripts</emph> of the element.</p></descr></exception>
  1243. </raises>
  1244. </method>
  1245. <method name='setPreSubScriptAt'>
  1246. <descr><p>A convenience method to set the <emph>pre-subscript</emph> child at the position referenced by <kw>colIndex</kw>. 
  1247. If there is currently a <emph>pre-subscript</emph> at this position, it is 
  1248. replaced by <kw>newScript</kw>.</p></descr>
  1249. <parameters>
  1250. <param name='colIndex' type='unsigned long' attr='in'>
  1251. <descr><p>Column index of <emph>pre-subscript</emph> (where 1 represents the leftmost <emph>prescript</emph> column).</p></descr>
  1252. </param>
  1253. <param name='newScript' type='MathMLElement' attr='in'>
  1254. <descr><p><kw>MathMLElement</kw> representing the
  1255. element that is to be set as the <kw>colIndex</kw>-th <emph>pre-subscript</emph> child of this element.</p></descr>
  1256. </param>
  1257. </parameters>
  1258. <returns type='MathMLElement'>
  1259. <descr><p>The <kw>MathMLElement</kw> child of this
  1260. <kw>MathMLMultiScriptsElement</kw> representing the new pre-subscript in
  1261. the DOM.</p></descr></returns>
  1262. <raises>
  1263. <exception name='DOMException'>
  1264. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1265. an element that cannot be a <emph>pre-subscript</emph>.</p>
  1266. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1267. than one more than the number of <emph>pre-scripts</emph> of the element.</p></descr></exception>
  1268. </raises>
  1269. </method>
  1270. <method name='insertSubScriptBefore'>
  1271. <descr><p>A convenience method to insert a <emph>subscript</emph> before the position referenced by column index. If
  1272. <kw>colIndex</kw> is 0, the new <emph>subscript</emph> is appended
  1273. as the last <emph>subscript</emph> of the <kw role="element">mmultiscripts</kw> element; if colIndex is 1, a new <emph>subscript</emph> is prepended 
  1274. at the far left. Note that inserting a new <emph>subscript</emph> will 
  1275. cause the insertion of an empty <emph>superscript</emph> in the same column.</p></descr>
  1276. <parameters>
  1277. <param name='colIndex' type='unsigned long' attr='in'>
  1278. <descr><p>Column index of <emph>subscript</emph>, where 1 represents the leftmost <emph>script</emph> column (the
  1279. first to the right of the <emph>base</emph>).</p></descr>
  1280. </param>
  1281. <param name='newScript' type='MathMLElement' attr='in'>
  1282. <descr><p>A <kw>MathMLElement</kw> representing 
  1283. the element to be inserted as a <emph>subscript</emph>.</p></descr>
  1284. </param>
  1285. </parameters>
  1286. <returns type='MathMLElement'>
  1287. <descr><p>The <kw>MathMLElement</kw> child of this
  1288. <kw>MathMLMultiScriptsElement</kw> that represents the new <emph>subscript</emph> in the DOM.</p></descr></returns>
  1289. <raises>
  1290. <exception name='DOMException'>
  1291. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1292. an element that cannot be a subscript.</p>
  1293. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1294. than the number of <emph>scripts</emph> of the element.</p></descr></exception>
  1295. </raises>
  1296. </method>
  1297. <method name='setSubScriptAt'>
  1298. <descr><p>A convenience method to set the <emph>subscript</emph> child at the position referenced by <kw>colIndex</kw>. 
  1299. If there is currently a <emph>subscript</emph> at this position, it is 
  1300. replaced by <kw>newScript</kw>.</p></descr>
  1301. <parameters>
  1302. <param name='colIndex' type='unsigned long' attr='in'>
  1303. <descr><p>Column index of <emph>subscript</emph>, where 1 represents the leftmost <emph>script</emph> column
  1304. (the first to the right of the <emph>base</emph>).</p></descr>
  1305. </param>
  1306. <param name='newScript' type='MathMLElement' attr='in'>
  1307. <descr><p><kw>MathMLElement</kw> representing the
  1308. element that is to be set as the <kw>colIndex</kw>-th <emph>subscript</emph> 
  1309. child of this element.</p></descr>
  1310. </param>
  1311. </parameters>
  1312. <returns type='MathMLElement'>
  1313. <descr><p>The <kw>MathMLElement</kw> child of this
  1314. element representing the new <emph>subscript</emph> in the DOM.</p></descr></returns>
  1315. <raises>
  1316. <exception name='DOMException'>
  1317. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1318. an element that cannot be a <emph>subscript</emph>.</p>
  1319. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1320. than one more than the number of <emph>scripts</emph> of the element.</p></descr></exception>
  1321. </raises>
  1322. </method>
  1323. <method name='insertPreSuperScriptBefore'>
  1324. <descr><p>A convenience method to insert a <emph>pre-superscript</emph> before the position referenced by column index. If
  1325. <kw>colIndex</kw> is 0, the new <emph>pre-superscript</emph> is appended
  1326. as the last <emph>pre-superscript</emph> of the <kw role="element">
  1327. mmultiscripts</kw> element; if colIndex is 1, a new <emph>pre-superscript</emph> is prepended at the far left. Note that inserting a
  1328. new <emph>pre-superscript</emph> will cause the insertion of an empty
  1329. <emph>pre-subscript</emph> in the same column.</p></descr>
  1330. <parameters>
  1331. <param name='colIndex' type='unsigned long' attr='in'>
  1332. <descr><p>Column index of <emph>pre-superscript</emph> (where 1 represents the leftmost <emph>prescript</emph> column).</p></descr>
  1333. </param>
  1334. <param name='newScript' type='MathMLElement' attr='in'>
  1335. <descr><p>A <kw>MathMLElement</kw> representing 
  1336. the element to be inserted as a <emph>pre-superscript</emph>.</p></descr>
  1337. </param>
  1338. </parameters>
  1339. <returns type='MathMLElement'>
  1340. <descr><p>The <kw>MathMLElement</kw> child of this
  1341. element that represents the new <emph>pre-superscript</emph> in the DOM.</p></descr></returns>
  1342. <raises>
  1343. <exception name='DOMException'>
  1344. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1345. an element that cannot be a pre-superscript.</p>
  1346. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1347. than the number of <emph>pre-scripts</emph> of the element.</p></descr></exception>
  1348. </raises>
  1349. </method>
  1350. <method name='setPreSuperScriptAt'>
  1351. <descr><p>A convenience method to set the <emph>pre-superscript</emph> child at the position referenced by <kw>colIndex</kw>. 
  1352. If there is currently a <emph>pre-superscript</emph> at this position, it is 
  1353. replaced by <kw>newScript</kw>.</p></descr>
  1354. <parameters>
  1355. <param name='colIndex' type='unsigned long' attr='in'>
  1356. <descr><p>Column index of <emph>pre-superscript</emph> (where 1 represents the leftmost <emph>prescript</emph> column).</p></descr>
  1357. </param>
  1358. <param name='newScript' type='MathMLElement' attr='in'>
  1359. <descr><p><kw>MathMLElement</kw> representing the
  1360. element that is to be set as the <kw>colIndex</kw>-th <emph>pre-superscript</emph> child of this element.</p></descr>
  1361. </param>
  1362. </parameters>
  1363. <returns type='MathMLElement'>
  1364. <descr><p>The <kw>MathMLElement</kw> child of this
  1365. element that represents the new <emph>pre-superscript</emph> in the DOM.</p></descr></returns>
  1366. <raises>
  1367. <exception name='DOMException'>
  1368. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1369. an element that cannot be a <emph>pre-superscript</emph>.</p>
  1370. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1371. than one more than the number of <emph>pre-scripts</emph> of the element.</p></descr></exception>
  1372. </raises>
  1373. </method>
  1374. <method name='insertSuperScriptBefore'>
  1375. <descr><p>A convenience method to insert a <emph>superscript</emph> before the position referenced by column index. If
  1376. <kw>colIndex</kw> is 0, the new <emph>superscript</emph> is appended
  1377. as the last <emph>superscript</emph> of the <kw role="element">mmultiscripts</kw> element; if colIndex is 1, a new <emph>superscript</emph> is prepended 
  1378. at the far left. Note that inserting a new <emph>superscript</emph> will 
  1379. cause the insertion of an empty <emph>subscript</emph> in the same column.</p></descr>
  1380. <parameters>
  1381. <param name='colIndex' type='unsigned long' attr='in'>
  1382. <descr><p>Column index of <emph>superscript</emph>, where 1 represents the leftmost <emph>script</emph> column (the
  1383. first to the right of the <emph>base</emph>).</p></descr>
  1384. </param>
  1385. <param name='newScript' type='MathMLElement' attr='in'>
  1386. <descr><p>A <kw>MathMLElement</kw> representing 
  1387. the element to be inserted as a <emph>superscript</emph>.</p></descr>
  1388. </param>
  1389. </parameters>
  1390. <returns type='MathMLElement'>
  1391. <descr><p>The <kw>MathMLElement</kw> child of this
  1392. element that represents the new <emph>superscript</emph> in the DOM.</p></descr></returns>
  1393. <raises>
  1394. <exception name='DOMException'>
  1395. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1396. an element that cannot be a superscript.</p>
  1397. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1398. than the number of <emph>scripts</emph> of the element.</p></descr></exception>
  1399. </raises>
  1400. </method>
  1401. <method name='setSuperScriptAt'>
  1402. <descr><p>A convenience method to set the <emph>superscript</emph> child at the position referenced by <kw>colIndex</kw>. 
  1403. If there is currently a <emph>superscript</emph> at this position, it is 
  1404. replaced by <kw>newScript</kw>.</p></descr>
  1405. <parameters>
  1406. <param name='colIndex' type='unsigned long' attr='in'>
  1407. <descr><p>Column index of <emph>superscript</emph>, where 1 represents the leftmost <emph>script</emph> column
  1408. (the first to the right of the <emph>base</emph>).</p></descr>
  1409. </param>
  1410. <param name='newScript' type='MathMLElement' attr='in'>
  1411. <descr><p><kw>MathMLElement</kw> representing the
  1412. element that is to be set as the <kw>colIndex</kw>-th <emph>superscript</emph> 
  1413. child of this element.</p></descr>
  1414. </param>
  1415. </parameters>
  1416. <returns type='MathMLElement'>
  1417. <descr><p>The <kw>MathMLElement</kw> child of this
  1418. element that represents the new <emph>superscript</emph> in the DOM.</p></descr></returns>
  1419. <raises>
  1420. <exception name='DOMException'>
  1421. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newScript</kw> represents
  1422. an element that cannot be a <emph>superscript</emph>.</p>
  1423. <p>INDEX_SIZE_ERR: Raised if <kw>colIndex</kw> is greater 
  1424. than one more than the number of <emph>scripts</emph> of the element.</p></descr></exception>
  1425. </raises>
  1426. </method>
  1427. </interface>
  1428.  
  1429. <interface name='MathMLTableElement' inherits='MathMLPresentationElement' id='dom_TableElement'>
  1430. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw>
  1431. interface for the MathML <emph>table 
  1432. or matrix</emph> element <intref ref="presm_mtable"><kw role="element">mtable</kw></intref>.
  1433. </p>
  1434. <?generate-idl?>
  1435. </descr>
  1436. <attribute name='align' type='DOMString' readonly='no'>
  1437. <descr><p>A string representing the vertical alignment of the table with 
  1438. the adjacent text. Allowed values are 
  1439. (<kw role="attval">top</kw> | 
  1440. <kw role="attval">bottom</kw> | 
  1441. <kw role="attval">center</kw> | 
  1442. <kw role="attval">baseline</kw> | 
  1443. <kw role="attval">axis</kw>)[<emph>rownumber</emph>], 
  1444. where <emph>rownumber</emph> is between 1 and <mi>n</mi> (for a table with
  1445. <mi>n</mi> rows) or -1 and -<mi>n</mi>.</p></descr>
  1446. </attribute>
  1447. <attribute name='rowalign' type='DOMString' readonly='no'>
  1448. <descr><p>A string representing the alignment of entries in each
  1449. row, consisting of a space-separated sequence of alignment
  1450. specifiers, each of which can have the following values:
  1451. <kw role="attval">top</kw>,
  1452. <kw role="attval">bottom</kw>,
  1453. <kw role="attval">center</kw>, 
  1454. <kw role="attval">baseline</kw>, or 
  1455. <kw role="attval">axis</kw>.</p></descr>
  1456. </attribute>
  1457. <attribute name='columnalign' type='DOMString' readonly='no'>
  1458. <descr><p>A string representing the alignment of entries in each
  1459. column, consisting of a space-separated sequence of alignment
  1460. specifiers, each of which can have the following values:
  1461. <kw role="attval">left</kw>,
  1462. <kw role="attval">center</kw>, or
  1463. <kw role="attval">right</kw>.</p></descr>
  1464. </attribute>
  1465. <attribute name='groupalign' type='DOMString' readonly='no'>
  1466. <descr><p>A string specifying how the alignment groups within the cells 
  1467. of each row are to be aligned with the corresponding items above or below them 
  1468. in the same column. The string consists of a sequence of braced group 
  1469. alignment lists. Each group alignment list is a space-separated
  1470. sequence, each of which can have the following values:
  1471. <kw role="attval">left</kw>,
  1472. <kw role="attval">right</kw>, 
  1473. <kw role="attval">center</kw>, or
  1474. <kw role="attval">decimalpoint</kw>.</p></descr>
  1475. </attribute>
  1476. <attribute name='alignmentscope' type='DOMString' readonly='no'>
  1477. <descr><p>A string consisting of the values <kw role="attval">true</kw> or
  1478. <kw role="attval">false</kw> indicating, for each column, whether it can be 
  1479. used as an alignment scope.</p></descr>
  1480. </attribute>
  1481. <attribute name='columnwidth' type='DOMString' readonly='no'>
  1482. <descr><p>A string consisting of a space-separated sequence of
  1483. specifiers, each of which can have one of the following forms:
  1484. <kw role="attval">auto</kw>,
  1485. <kw>number h-unit</kw>,
  1486. <kw>namedspace</kw>, or
  1487. <kw role="attval">fit</kw>. (A value of the form <kw>namedspace</kw> is one
  1488. of <kw role="attval">veryverythinmathspace</kw>, <kw role="attval">verythinmathspace</kw>, 
  1489. <kw role="attval">thinmathspace</kw>, <kw role="attval">mediummathspace</kw>, 
  1490. <kw role="attval">thickmathspace</kw>, <kw role="attval">verythickmathspace</kw>, or 
  1491. <kw role="attval">veryverythickmathspace</kw>.) This represents the element's 
  1492. <kw role="attrib">columnwidth</kw> attribute.</p></descr>
  1493. </attribute>
  1494. <attribute name='width' type='DOMString' readonly='no'>
  1495. <descr><p>A string that is either of the form 
  1496. <kw>number h-unit</kw> or is the string <kw role="attval">auto</kw>.
  1497. This represents the element's <kw role="attrib">width</kw> attribute.</p></descr>
  1498. </attribute>
  1499. <attribute name='rowspacing' type='DOMString' readonly='no'>
  1500. <descr><p>A string consisting of a space-separated sequence of
  1501. specifiers of the form <kw>number v-unit</kw> 
  1502. representing the space to be added between rows.</p></descr>
  1503. </attribute>
  1504. <attribute name='columnspacing' type='DOMString' readonly='no'>
  1505. <descr><p>A string consisting of a space-separated sequence of
  1506. specifiers of the form <kw>number h-unit</kw> 
  1507. representing the space to be added between columns.</p></descr>
  1508. </attribute>
  1509. <attribute name='rowlines' type='DOMString' readonly='no'>
  1510. <descr><p>A string specifying whether and what kind of lines should be 
  1511. added between each row. The string consists of a 
  1512. space-separated sequence of specifiers, each of which
  1513. can have the following values: 
  1514. <kw role="attval">none</kw>,
  1515. <kw role="attval">solid</kw>, or
  1516. <kw role="attval">dashed</kw>.</p></descr>
  1517. </attribute>
  1518. <attribute name='columnlines' type='DOMString' readonly='no'>
  1519. <descr><p>A string specifying whether and what kind of lines should be 
  1520. added between each column. The string consists of a 
  1521. space-separated sequence of specifiers, each of which
  1522. can have the following values: 
  1523. <kw role="attval">none</kw>,
  1524. <kw role="attval">solid</kw>, or
  1525. <kw role="attval">dashed</kw>.</p></descr>
  1526. </attribute>
  1527. <attribute name='frame' type='DOMString' readonly='no'>
  1528. <descr><p>A string specifying a frame around the table. Allowed
  1529. values are <kw>(none | solid | dashed)</kw>.</p></descr>
  1530. </attribute>
  1531. <attribute name='framespacing' type='DOMString' readonly='no'>
  1532. <descr><p>A string of the form <kw>number h-unit number v-unit</kw> specifying the spacing between table and its frame.</p></descr>
  1533. </attribute>
  1534. <attribute name='equalrows' type='DOMString' readonly='no'>
  1535. <descr><p>A string with the values <kw role="attval">true</kw> or 
  1536. <kw role="attval">false</kw>.</p></descr>
  1537. </attribute>
  1538. <attribute name='equalcolumns' type='DOMString' readonly='no'>
  1539. <descr><p>A string with the values <kw role="attval">true</kw> or 
  1540. <kw role="attval">false</kw>.</p></descr>
  1541. </attribute>
  1542. <attribute name='displaystyle' type='DOMString' readonly='no'>
  1543. <descr><p>A string with the values <kw role="attval">true</kw> or 
  1544. <kw role="attval">false</kw>.</p></descr>
  1545. </attribute>
  1546. <attribute name='side' type='DOMString' readonly='no'>
  1547. <descr><p>A string with the values <kw role="attval">left</kw>,
  1548. <kw role="attval">right</kw>, <kw role="attval">leftoverlap</kw>, or
  1549. <kw role="attval">rightoverlap</kw>.</p></descr>
  1550. </attribute>
  1551. <attribute name='minlabelspacing' type='DOMString' readonly='no'>
  1552. <descr><p>A string of the form <kw>number h-unit</kw>, specifying
  1553. the minimum space between a label and the adjacent entry in the labeled row.</p></descr>
  1554. </attribute>
  1555. <attribute name='rows' type='MathMLNodeList' readonly='yes'>
  1556. <descr><p>A <kw>MathMLNodeList</kw> consisting 
  1557. of <kw>MathMLTableRowElements</kw> and <kw>MathMLLabeledRowElements</kw> 
  1558. representing the rows of the table. This is a <emph>live</emph> object.</p></descr>
  1559. </attribute>
  1560. <method name='insertEmptyRow'>
  1561. <descr><p>A convenience method to insert a new (empty) 
  1562. row (<intref ref="presm_mtr"><kw role="element">mtr</kw></intref>) in the table before the current <kw>index</kw>-th row. If <kw>index</kw> is less than 0, the new row is inserted 
  1563. before the <kw>-index</kw>-th row counting up from the current last row; if 
  1564. <kw>index</kw> is equal to the current number of rows, the new row is 
  1565. appended as the last row.</p></descr>
  1566. <parameters>
  1567. <param name='index' type='long' attr='in'>
  1568. <descr><p>Position before which to insert the 
  1569. new row, where 0 represents the first row. Negative numbers are used to
  1570. count backwards from the last row.</p></descr>
  1571. </param>
  1572. </parameters>
  1573. <returns type='MathMLTableRowElement'>
  1574. <descr><p>Returns the <intref ref="dom_TableRowElement"><kw>MathMLTableRowElement</kw></intref> 
  1575. child of this <kw>MathMLTableElement</kw> that represents the new 
  1576. <kw role="element">mtr</kw> element being inserted.</p></descr></returns>
  1577. <raises>
  1578. <exception name='DOMException'>
  1579. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1580. than the current number of rows of this <kw role="element">mtable</kw> 
  1581. element or less than minus this number.</p></descr></exception>
  1582. </raises>
  1583. </method>
  1584. <method name='insertEmptyLabeledRow'>
  1585. <descr><p>A convenience method to insert a new (empty) 
  1586. labeled row (<intref ref="presm_mlabeledtr"><kw role="element">mlabeledtr</kw></intref>) in the table before the 
  1587. current <kw>index</kw>-th row. If <kw>index</kw> is less than 0, the new row 
  1588. is inserted before the <kw>-index</kw>-th row counting up from the current 
  1589. last row; if <kw>index</kw> is equal to the current number of rows, the new 
  1590. row is appended as the last row.</p></descr>
  1591. <parameters>
  1592. <param name='index' type='long' attr='in'>
  1593. <descr><p>Position before which to insert the 
  1594. new row, where 0 represents the first row. Negative numbers are used to
  1595. count backwards from the last row.</p></descr>
  1596. </param>
  1597. </parameters>
  1598. <returns type='MathMLLabeledRowElement'>
  1599. <descr><p>Returns the <intref ref="dom_LabeledRowElement"><kw>MathMLLabeledRowElement</kw></intref> child of this <kw>MathMLTableElement</kw> representing the 
  1600. <kw role="element">mtr</kw> element being inserted.</p></descr></returns>
  1601. <raises>
  1602. <exception name='DOMException'>
  1603. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1604. than the current number of rows of this <kw role="element">mtable</kw> 
  1605. element or less than minus this number.</p></descr></exception>
  1606. </raises>
  1607. </method>
  1608. <method name='getRow'>
  1609. <descr><p>A convenience method to retrieve the <kw>index</kw>-th row 
  1610. from the table. If <kw>index</kw> is less than 0, the <kw>-index</kw>-th row 
  1611. from the bottom of the table is retrieved. (So, for instance, if <kw>index</kw> is -2, the next-to-last row is retrieved.) If <kw>index</kw> is not
  1612. a valid value (i.e. is greater than or equal to the number of rows, or is
  1613. less than minus the number of rows), a <kw>null MathMLTableRowElement</kw> is 
  1614. returned.</p></descr>
  1615. <parameters>
  1616. <param name='index' type='unsigned long' attr='in'>
  1617. <descr><p>Index of the row to be returned, where
  1618. 0 represents the first row. Negative numbers are used to count backwards 
  1619. from the last row.</p></descr>
  1620. </param>
  1621. </parameters>
  1622. <returns type='MathMLTableRowElement'>
  1623. <descr><p>Returns the <kw>MathMLTableRowElement</kw> 
  1624. representing the <kw>index</kw>-th row of the table.</p></descr></returns>
  1625. <raises>
  1626. </raises>
  1627. </method>
  1628. <method name='insertRow'>
  1629. <descr><p>A convenience method to insert the new row or
  1630. labeled row (<kw role="element">mtr</kw> or <kw role="element">mlabeledtr</kw>) represented by <kw>newRow</kw> in the table before the current <kw>index</kw>-th row. If <kw>index</kw> is equal to the current number of rows, 
  1631. <kw>newRow</kw> is appended as the last row in the table. If <kw>index</kw> 
  1632. is less than 0, the new row is inserted before the <kw>-index</kw>-th row 
  1633. from the bottom of the table. (So, for instance, if <kw>index</kw> is -2, 
  1634. the new row is inserted before the next-to-last current row.)</p></descr>
  1635. <parameters>
  1636. <param name='index' type='long' attr='in'>
  1637. <descr><p>Index before which to insert <kw>newRow</kw>, where 0 represents the first row. Negative numbers are used to count 
  1638. backwards from the current last row.</p></descr>
  1639. </param>
  1640. <param name='newRow' type='MathMLTableRowElement' attr='in'>
  1641. <descr><p>A <kw>MathMLTableRowElement</kw> or
  1642. <kw>MathMLLabeledRowElement</kw> representing the row to be inserted.</p></descr>
  1643. </param>
  1644. </parameters>
  1645. <returns type='MathMLTableRowElement'>
  1646. <descr><p>The <kw>MathMLTableRowElement</kw> or 
  1647. <kw>MathMLLabeledRowElement</kw> child of this <kw>MathMLTableElement</kw> representing the <kw role="element">mtr</kw> element being inserted.</p></descr></returns>
  1648. <raises>
  1649. <exception name='DOMException'>
  1650. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newRow</kw> is not a
  1651. <kw>MathMLTableRowElement</kw> or <kw>MathMLLabeledRowElement</kw>.</p>
  1652. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1653. than the current number of rows or less than minus the current number of
  1654. rows of this <kw role="element">mtable</kw> element.</p></descr></exception>
  1655. </raises>
  1656. </method>
  1657. <method name='setRow'>
  1658. <descr><p>A method to set the value of the row in the 
  1659. table at the specified index to the <kw role="element">mtr</kw> or 
  1660. <kw role="element">mlabeledtr</kw> represented by <kw>newRow</kw>. If <kw>index</kw> is less than 0, the <kw>-index</kw>-th row counting up from the 
  1661. last is replaced by <kw>newRow</kw>; if <kw>index</kw> is one more than the 
  1662. current number of rows, the new row is appended as the last row in the 
  1663. table.</p></descr>
  1664. <parameters>
  1665. <param name='index' type='long' attr='in'>
  1666. <descr><p>Index of the row to be set to <kw>newRow</kw>, where 0 represents the first row. Negative numbers are used to 
  1667. count backwards from the last row.</p></descr>
  1668. </param>
  1669. <param name='newRow' type='MathMLTableRowElement' attr='in'>
  1670. <descr><p>A <kw>MathMLTableRowElement</kw> 
  1671. representing the row that is to be the new <kw>index</kw>-th row.</p></descr>
  1672. </param>
  1673. </parameters>
  1674. <returns type='MathMLTableRowElement'>
  1675. <descr><p>Returns the <kw>MathMLTableRowElement</kw> 
  1676. or <kw>MathMLLabeledRowElement</kw> child of this element that represents 
  1677. the new row in the DOM.</p></descr></returns>
  1678. <raises>
  1679. <exception name='DOMException'>
  1680. <descr><p>HIERARCHY_REQUEST_ERR: Raised if <kw>newRow</kw> is not a
  1681. <kw>MathMLTableRowElement</kw> or <kw>MathMLLabeledRowElement</kw>.</p>
  1682. <p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1683. than the current number of rows of this <kw role="element">mtable</kw> 
  1684. element or less than minus this number.</p></descr></exception>
  1685. </raises>
  1686. </method>
  1687. <method name='deleteRow'>
  1688. <descr><p>A convenience method to delete the row of the 
  1689. table at the specified index. If <kw>index</kw> is less than 0, the <kw>-index</kw>-th row from the bottom of the table is deleted. (So, for 
  1690. instance, if <kw>index</kw> is -2, the next-to-last row is deleted.)</p></descr>
  1691. <parameters>
  1692. <param name='index' type='unsigned long' attr='in'>
  1693. <descr><p>Index of row to be deleted, where 0 
  1694. represents the first row.</p></descr>
  1695. </param>
  1696. </parameters>
  1697. <returns type='void'>
  1698. <descr><p>None.</p></descr></returns>
  1699. <raises>
  1700. <exception name='DOMException'>
  1701. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1702. than or equal to the current number of rows of this <kw role="element">
  1703. mtable</kw> element or less than minus this number.</p></descr></exception>
  1704. </raises>
  1705. </method>
  1706. <method name='removeRow'>
  1707. <descr><p>A convenience method to delete the row of the 
  1708. table at the specified index and return it to the caller. If <kw>index</kw> 
  1709. is less than 0, the <kw>-index</kw>-th row from the bottom of the table is 
  1710. deleted. (So, for instance, if <kw>index</kw> is -2, the next-to-last 
  1711. row is deleted.)</p></descr>
  1712. <parameters>
  1713. <param name='index' type='long' attr='in'>
  1714. <descr><p>Index of row to be removed, where 0 
  1715. represents the first row.</p></descr>
  1716. </param>
  1717. </parameters>
  1718. <returns type='MathMLTableRowElement'>
  1719. <descr><p>A <kw>MathMLTableRowElement</kw> representing 
  1720. the row being deleted.</p></descr></returns>
  1721. <raises>
  1722. <exception name='DOMException'>
  1723. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1724. than or equal to the number of rows of this <kw role="element">mtable</kw> 
  1725. element or less than minus this number.</p></descr></exception>
  1726. </raises>
  1727. </method>
  1728. </interface>
  1729.  
  1730. <interface name='MathMLTableRowElement' inherits='MathMLPresentationElement' id='dom_TableRowElement'>
  1731. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> 
  1732. interface for the MathML table or matrix row element <intref ref="presm_mtr"><kw role="element">mtr</kw></intref>.
  1733. </p>
  1734. <?generate-idl?>
  1735. </descr>
  1736. <attribute name='rowalign' type='DOMString' readonly='no'>
  1737. <descr><p>A string representing an override of the row alignment specified in 
  1738. the containing <intref ref="presm_mtable"><kw role="element">mtable</kw></intref>. Allowed values are 
  1739. <kw role="attval">top</kw>,
  1740. <kw role="attval">bottom</kw>,
  1741. <kw role="attval">center</kw>,
  1742. <kw role="attval">baseline</kw>, and
  1743. <kw role="attval">axis</kw>.</p></descr>
  1744. </attribute>
  1745. <attribute name='columnalign' type='DOMString' readonly='no'>
  1746. <descr><p>A string representing an override of the column alignment specified in 
  1747. the containing <kw role="element">mtable</kw>. Allowed values are 
  1748. <kw role="attval">left</kw>,
  1749. <kw role="attval">center</kw>, and
  1750. <kw role="attval">right</kw>.</p></descr>
  1751. </attribute>
  1752. <attribute name='groupalign' type='DOMString' readonly='no'>
  1753. <descr><p>[To be changed?]</p></descr>
  1754. </attribute>
  1755. <attribute name='cells' type='MathMLNodeList' readonly='yes'>
  1756. <descr><p>A <kw>MathMLNodeList</kw> consisting of the cells of the 
  1757. row. <emph>Note that this does not include the label if this is a 
  1758. <intref ref="dom_LabeledRowElement"><kw>MathMLLabeledRowElement</kw></intref>!</emph></p></descr>
  1759. </attribute>
  1760. <method name='insertEmptyCell'>
  1761. <descr><p>A convenience method to insert a new (empty) 
  1762. cell in the row.</p></descr>
  1763. <parameters>
  1764. <param name='index' type='unsigned long' attr='in'>
  1765. <descr><p>Index of the cell before which the new
  1766. cell is to be inserted, where the first cell is numbered 0. If <kw>index</kw> 
  1767. is equal to the current number of cells, the new cell is appended as the 
  1768. last cell of the row. <emph>Note that the index will differ from the index 
  1769. of the corresponding <kw>Node</kw> in the collection returned by <kw>Node::childNodes</kw> if this is a <kw>MathMLLabeledRowElement</kw>!</emph></p></descr>
  1770. </param>
  1771. </parameters>
  1772. <returns type='MathMLTableCellElement'>
  1773. <descr><p>Returns the <intref ref="dom_TableCellElement"><kw>MathMLTableCellElement</kw></intref> 
  1774. representing the <intref ref="presm_mtd"><kw role="element">mtd</kw></intref> element being inserted.</p></descr></returns>
  1775. <raises>
  1776. <exception name='DOMException'>
  1777. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1778. than the current number of cells of this <kw role="element">mtr</kw> 
  1779. element.</p></descr></exception>
  1780. </raises>
  1781. </method>
  1782. <method name='insertCell'>
  1783. <descr><p>A convenience method to insert a new cell in 
  1784. the row.</p></descr>
  1785. <parameters>
  1786. <param name='newCell' type='MathMLTableCellElement' attr='in'>
  1787. <descr><p>A <kw>MathMLTableCellElement</kw>
  1788. representing the new cell (<kw role="element">mtd</kw> element) to be
  1789. inserted.</p></descr>
  1790. </param>
  1791. <param name='index' type='unsigned long' attr='in'>
  1792. <descr><p>Index of the cell before which the new
  1793. cell is to be inserted, where the first cell is numbered 0. If <kw>index</kw> 
  1794. equals the current number of cells, the new cell is appended as the last 
  1795. cell of the row. <emph>Note that the index will differ from the index of 
  1796. the corresponding <kw>Node</kw> in <kw>Node::childNodes</kw> if this is a 
  1797. <kw>MathMLLabeledRowElement</kw>!</emph></p></descr>
  1798. </param>
  1799. </parameters>
  1800. <returns type='MathMLTableCellElement'>
  1801. <descr><p>The <kw>MathMLTableCellElement</kw> 
  1802. representing the <kw role="element">mtd</kw> element being inserted.</p></descr></returns>
  1803. <raises>
  1804. <exception name='DOMException'>
  1805. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  1806. than the current number of cells of this <kw role="element">mtr</kw> 
  1807. element.</p></descr></exception>
  1808. </raises>
  1809. </method>
  1810. <method name='setCell'>
  1811. <descr><p>A convenience method to set the value of a cell 
  1812. in the row to <kw>newCell</kw>. If index is equal to the current number
  1813. of cells, <kw>newCell</kw> is appended as the last cell in the row.</p></descr>
  1814. <parameters>
  1815. <param name='newCell' type='MathMLTableCellElement' attr='in'>
  1816. <descr><p>A <kw>MathMLTableCellElement</kw>
  1817. representing the cell (<kw role="element">mtd</kw> element) that is to be
  1818. inserted.</p></descr>
  1819. </param>
  1820. <param name='index' type='unsigned long' attr='in'>
  1821. <descr><p>Index of the cell that is to be 
  1822. replaced by the new cell, where the first cell is numbered 0. <emph>Note 
  1823. that the index will differ from the index of the corresponding <kw>Node</kw> in the collection returned by <kw>Node::childNodes</kw> if this is a 
  1824. <kw>MathMLLabeledRowElement</kw>!</emph></p></descr>
  1825. </param>
  1826. </parameters>
  1827. <returns type='MathMLTableCellElement'>
  1828. <descr><p>The <kw>MathMLTableCellElement</kw> 
  1829. child of this <kw>MathMLTableRowElement</kw> representing the new
  1830. <kw role="element">mtd</kw> element.</p></descr></returns>
  1831. <raises>
  1832. </raises>
  1833. </method>
  1834. <method name='deleteCell'>
  1835. <descr><p>A convenience method to delete a cell in the row.</p></descr>
  1836. <parameters>
  1837. <param name='index' type='unsigned long' attr='in'>
  1838. <descr><p>Index of cell to be deleted. <emph>Note that the
  1839. count will differ from the <kw>index</kw>-th child node if this is a
  1840. <kw>MathMLLabeledRowElement</kw>!</emph></p></descr>
  1841. </param>
  1842. </parameters>
  1843. <returns type='void'>
  1844. <descr><p>None.</p></descr></returns>
  1845. <raises>
  1846. </raises>
  1847. </method>
  1848. </interface>
  1849.  
  1850. <interface name='MathMLLabeledRowElement' inherits='MathMLTableRowElement' id='dom_LabeledRowElement'>
  1851. <descr><p>This interface extends the <kw>MathMLTableRowElement</kw> 
  1852. interface to represent the <intref ref="presm_mlabeledtr"><kw role="element">mlabeledtr</kw></intref> element 
  1853. <specref ref="presm_mlabeledtr"/>. <emph>Note that the presence of a label
  1854. causes the <kw>index</kw>th child node to differ from the <kw>index</kw>-th 
  1855. cell!</emph>
  1856. </p>
  1857. <?generate-idl?>
  1858. </descr>
  1859. <attribute name='label' type='MathMLElement' readonly='no'>
  1860. <descr><p>A <intref ref="dom_Element"><kw>MathMLElement</kw></intref> representing the
  1861. label of this row. Note that retrieving this should have the same effect as 
  1862. a call to <kw>Node::getfirstChild()</kw>, while setting it should have the same effect
  1863. as <code>Node::replaceChild(Node::getfirstChild())</code>.</p></descr>
  1864. <setraises>
  1865. <exception name='DOMException'>
  1866. <descr><p>NO_MODIFICATION_ALLOWED_ERR: Raised if this <kw>MathMLElement</kw> or the 
  1867. new <kw>MathMLElement</kw> is read-only.</p></descr></exception>
  1868. </setraises>
  1869. </attribute>
  1870. </interface>
  1871.  
  1872. <interface name='MathMLTableCellElement' inherits='MathMLPresentationContainer' id='dom_TableCellElement'>
  1873. <descr><p>This interface extends the <kw>MathMLPresentationContainer</kw> 
  1874. interface for the MathML table or matrix cell element <intref ref="presm_mtd"><kw role="element">mtd</kw></intref>. 
  1875. </p>
  1876. <?generate-idl?>
  1877. </descr>
  1878. <attribute name='rowspan' type='DOMString' readonly='no'>
  1879. <descr><p>A string representing a positive integer that specifies the 
  1880. number of rows spanned by this cell. The default is 1.</p></descr>
  1881. </attribute>
  1882. <attribute name='columnspan' type='DOMString' readonly='no'>
  1883. <descr><p>A string representing a positive integer that specifies the 
  1884. number of columns spanned by this cell. The default is 1.</p></descr>
  1885. </attribute>
  1886. <attribute name='rowalign' type='DOMString' readonly='no'>
  1887. <descr><p>A string specifying an override of the inherited vertical 
  1888. alignment of this cell within the table row. Allowed values are 
  1889. <kw role="attval">top</kw>,
  1890. <kw role="attval">bottom</kw>,
  1891. <kw role="attval">center</kw>,
  1892. <kw role="attval">baseline</kw>, and
  1893. <kw role="attval">axis</kw>.</p></descr>
  1894. </attribute>
  1895. <attribute name='columnalign' type='DOMString' readonly='no'>
  1896. <descr><p>A string specifying an override of the inherited horizontal 
  1897. alignment of this cell within the table column. Allowed values are 
  1898. <kw role="attval">left</kw>,
  1899. <kw role="attval">center</kw>, and
  1900. <kw role="attval">right</kw>.</p></descr>
  1901. </attribute>
  1902. <attribute name='groupalign' type='DOMString' readonly='no'>
  1903. <descr><p>A string specifying how the alignment groups within the cell are 
  1904. to be aligned with those in cells above or below this cell. The string
  1905. consists of a space-separated sequence of specifiers, each of which
  1906. can have the following values:
  1907. <kw role="attval">left</kw>,
  1908. <kw role="attval">right</kw>, 
  1909. <kw role="attval">center</kw>, or
  1910. <kw role="attval">decimalpoint</kw>.</p></descr>
  1911. </attribute>
  1912. <attribute name='hasaligngroups' type='boolean' readonly='yes'>
  1913. <descr><p>A string with the values <kw role="attval">true</kw> or 
  1914. <kw role="attval">false</kw> indicating whether the cell contains align groups.</p></descr>
  1915. </attribute>
  1916. <attribute name='cellindex' type='DOMString' readonly='yes'>
  1917. <descr><p>A string representing the integer index (1-based?) of the cell 
  1918. in its containing row. [What about spanning cells? How do these affect this 
  1919. value?]</p></descr>
  1920. </attribute>
  1921. </interface>
  1922.  
  1923. <interface name='MathMLAlignGroupElement' inherits='MathMLPresentationElement' id='dom_AlignGroupElement'>
  1924. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  1925. the MathML group -alignment element <intref ref="presm_malign"><kw role="emptytag">maligngroup</kw></intref>.
  1926. </p>
  1927. <?generate-idl?>
  1928. </descr>
  1929. <attribute name='groupalign' type='DOMString' readonly='no'>
  1930. <descr><p>A string specifying how the alignment group is to be aligned with 
  1931. other alignment groups above or below it. Allowed values are 
  1932. <kw role="attval">left</kw>,
  1933. <kw role="attval">right</kw>, 
  1934. <kw role="attval">center</kw>, or
  1935. <kw role="attval">decimalpoint</kw>.</p></descr>
  1936. </attribute>
  1937. </interface>
  1938.  
  1939. <interface name='MathMLAlignMarkElement' inherits='MathMLPresentationElement' id='dom_AlignMarkElement'>
  1940. <descr><p>This interface extends the <kw>MathMLPresentationElement</kw> interface for 
  1941. the MathML <emph>alignment mark</emph> element 
  1942. <intref ref="presm_malign"><kw role="emptytag">malignmark</kw></intref>.
  1943. </p>
  1944. <?generate-idl?>
  1945. </descr>
  1946. <attribute name='edge' type='DOMString' readonly='no'>
  1947. <descr><p>A string specifying alignment on the right edge of the preceding 
  1948. element or the left edge of the following element. Allowed values are 
  1949. <kw role="attval">left</kw> and
  1950. <kw role="attval">right</kw>.</p></descr>
  1951. </attribute>
  1952. </interface>
  1953.  
  1954. </definitions>
  1955. </div4>
  1956. </div3>
  1957.  
  1958. <div3><head>Content Elements</head>
  1959.  
  1960. <definitions>
  1961. <interface name='MathMLContentElement' inherits='MathMLElement' id='dom_ContentElement'>
  1962. <descr><p>This interface is provided to serve as a base interface for
  1963. various MathML Content interfaces. It contains no new attributes or methods at this time;
  1964. however, it is felt that the distinction between Presentation and Content MathML entities
  1965. should be indicated in the MathMLElement hierarchy. In particular, future versions of 
  1966. the MathML DOM may add functionality on this interface; it may also serve as an aid
  1967. to implementors.
  1968. </p>
  1969. <?generate-idl?>
  1970. </descr>
  1971. </interface>
  1972.  
  1973. </definitions>
  1974. <div4><head>Content Token Interfaces</head>
  1975. <definitions>
  1976. <interface name='MathMLContentToken' inherits='MathMLContentElement' id='dom_ContentToken'>
  1977. <descr><p>This is the interface from which the interfaces representing 
  1978. the MathML Content token elements (<intref ref="contm_ci"><kw role="element">ci</kw></intref>, <intref ref="contm_cn"><kw role="element">cn</kw></intref> and 
  1979. <intref ref="contm_csymbol"><kw role="element">csymbol</kw></intref>) are derived. These elements  may contain MathML Presentation 
  1980. elements, <kw>Text</kw> nodes, or a combination of both. Thus the <kw>getArgument</kw> 
  1981. and <kw>insertArgument</kw> methods have been provided to deal with this 
  1982. distinction between these elements and other MathML Content elements.
  1983. </p>
  1984. <?generate-idl?>
  1985. </descr>
  1986. <attribute name='arguments' type='MathMLNodeList' readonly='yes'>
  1987. <descr><p>The arguments of this element, returned as a <kw>MathMLNodeList</kw>.
  1988. Note that this is not necessarily the same as <kw>Node::childNodes</kw>, particularly
  1989. in the case of the <kw role="element">cn</kw> element. The reason is that the <intref ref="contm_sep"><kw role="element">sep</kw></intref>
  1990. elements that are used to separate the arguments of a <kw role="element">cn</kw> are
  1991. not returned.</p></descr>
  1992. </attribute>
  1993. <attribute name='definitionURL' type='DOMString' readonly='no'>
  1994. <descr><p>A URI pointing to a semantic definition for this content element.
  1995. Note that there is no stipulation about the form this definition may take!</p></descr>
  1996. </attribute>
  1997. <attribute name='encoding' type='DOMString' readonly='no'>
  1998. <descr><p>A string describing the syntax in which the definition
  1999. located at <intref ref="contm_attrib"><kw role="attrib">definitionURL</kw></intref> is given.</p></descr>
  2000. </attribute>
  2001. <method name='getArgument'>
  2002. <descr><p>A convenience method to retrieve the child 
  2003. argument at the position referenced by <kw>index</kw>. Note that this is
  2004. not necessarily the same as the <kw>index</kw>-th child <kw>Node</kw>
  2005. of this <kw>Element</kw>; in particular, <kw role="element">sep</kw>
  2006. elements will not be counted.</p></descr>
  2007. <parameters>
  2008. <param name='index' type='unsigned long' attr='in'>
  2009. <descr><p>Position of desired argument in the list 
  2010. of arguments. The first argument is numbered 1.</p></descr>
  2011. </param>
  2012. </parameters>
  2013. <returns type='Node'>
  2014. <descr><p>The <kw>Node</kw> retrieved.</p></descr></returns>
  2015. <raises>
  2016. </raises>
  2017. </method>
  2018. <method name='insertArgument'>
  2019. <descr><p>A convenience method to insert <kw>newArgument</kw> 
  2020. before the current <kw>index</kw>-th argument child of this element.
  2021. If <kw>index</kw> is 0, <kw>newArgument</kw> is appended as the last argument.</p></descr>
  2022. <parameters>
  2023. <param name='index' type='unsigned long' attr='in'>
  2024. <descr><p>Position before which <kw>newArgument</kw>
  2025. is to be inserted. The first argument is numbered 1.<emph>Note that this is 
  2026. not necessarily the index of the <kw>Node</kw> in the list of child nodes, 
  2027. as nodes representing such elements as <kw role="element">sep</kw> are not 
  2028. counted as arguments.</emph></p></descr>
  2029. </param>
  2030. <param name='newArgument' type='Node' attr='in'>
  2031. <descr><p><kw>Node</kw> to be inserted as the 
  2032. <kw>index</kw>-th argument. This will either be a <intref ref="dom_Element"><kw>MathMLElement</kw></intref> or 
  2033. a <kw>Text</kw> node.</p></descr>
  2034. </param>
  2035. </parameters>
  2036. <returns type='Node'>
  2037. <descr><p>The <kw>Node</kw> inserted. This is the 
  2038. element within the DOM.</p></descr></returns>
  2039. <raises>
  2040. </raises>
  2041. </method>
  2042. <method name='setArgument'>
  2043. <descr><p>A convenience method to set an argument child at the position 
  2044. referenced by <kw>index</kw>. If there is currently an argument at this 
  2045. position, it is replaced by <kw>newArgument</kw>.</p></descr>
  2046. <parameters>
  2047. <param name='index' type='unsigned long' attr='in'>
  2048. <descr><p>Position of the argument that is to be
  2049. set to <kw>newArgument</kw> in the list of arguments. The first argument
  2050. is numbered 1. <emph>Note that this is not necessarily the index of the 
  2051. <kw>Node</kw> in the list of child nodes, as nodes representing such elements
  2052. as <kw role="element">sep</kw> are not counted as arguments.</emph></p></descr>
  2053. </param>
  2054. <param name='newArgument' type='Node' attr='in'>
  2055. <descr><p><kw>Node</kw> to be inserted as the argument.
  2056. This will either be a <kw>MathMLElement</kw> or a <kw>Text</kw> node.</p></descr>
  2057. </param>
  2058. </parameters>
  2059. <returns type='Node'>
  2060. <descr><p>The <kw>Node</kw> inserted. This is the 
  2061. element within the DOM.</p></descr></returns>
  2062. <raises>
  2063. </raises>
  2064. </method>
  2065. <method name='deleteArgument'>
  2066. <descr><p>A convenience method to delete the argument child 
  2067. located at the position referenced by <kw>index</kw>.</p></descr>
  2068. <parameters>
  2069. <param name='index' type='unsigned long' attr='in'>
  2070. <descr><p>Position of the argument to be deleted from 
  2071. the list of arguments. The first argument is numbered 1.</p></descr>
  2072. </param>
  2073. </parameters>
  2074. <returns type='void'>
  2075. <descr><p>None.</p></descr></returns>
  2076. <raises>
  2077. </raises>
  2078. </method>
  2079. <method name='removeArgument'>
  2080. <descr><p>A convenience method to delete the argument child 
  2081. located at the position referenced by <kw>index</kw>, and to return it to
  2082. the caller.</p></descr>
  2083. <parameters>
  2084. <param name='index' type='unsigned long' attr='in'>
  2085. <descr><p>Position of the argument to be deleted from 
  2086. the list of arguments. The first argument is numbered 1.</p></descr>
  2087. </param>
  2088. </parameters>
  2089. <returns type='Node'>
  2090. <descr><p>A <kw>Node</kw> representing the deleted
  2091. argument.</p></descr></returns>
  2092. <raises>
  2093. </raises>
  2094. </method>
  2095. </interface>
  2096.  
  2097. <interface name='MathMLCnElement' inherits='MathMLContentToken' id='dom_CnElement'>
  2098. <descr><p>The <intref ref="contm_cn"><kw role="element">cn</kw></intref> element is used to specify actual 
  2099. numeric constants.
  2100. </p>
  2101. <?generate-idl?>
  2102. </descr>
  2103. <attribute name='type' type='DOMString' readonly='no'>
  2104. <descr><p>Values include, but are not restricted to,
  2105. <kw role="attval">e-notation</kw>, 
  2106. <kw role="attval">integer</kw>, 
  2107. <kw role="attval">rational</kw>, 
  2108. <kw role="attval">real</kw>, 
  2109. <kw role="attval">float</kw>, 
  2110. <kw role="attval">complex</kw>, 
  2111. <kw role="attval">complex-polar</kw>,
  2112. <kw role="attval">complex-cartesian</kw>, and
  2113. <kw role="attval">constant</kw>.</p></descr>
  2114. </attribute>
  2115. <attribute name='base' type='DOMString' readonly='no'>
  2116. <descr><p>A string representing an integer between 2 and 36; the base of the
  2117. numerical representation.</p></descr>
  2118. </attribute>
  2119. <attribute name='nargs' type='unsigned long' readonly='yes'>
  2120. <descr><p>The number of <intref ref="contm_sep"><kw role="element">sep</kw></intref>-separated arguments.</p></descr>
  2121. </attribute>
  2122. </interface>
  2123.  
  2124. <interface name='MathMLCiElement' inherits='MathMLContentToken' id='dom_CiElement'>
  2125. <descr><p>The <intref ref="contm_ci"><kw role="element">ci</kw></intref> element is used to specify a symbolic
  2126. name.
  2127. </p>
  2128. <?generate-idl?>
  2129. </descr>
  2130. <attribute name='type' type='DOMString' readonly='no'>
  2131. <descr><p>Values include
  2132. <kw role="attval">integer</kw>,
  2133. <kw role="attval">rational</kw>,
  2134. <kw role="attval">real</kw>,
  2135. <kw role="attval">float</kw>,
  2136. <kw role="attval">complex</kw>, 
  2137. <kw role="attval">complex-polar</kw>,
  2138. <kw role="attval">complex-cartesian</kw>,
  2139. <kw role="attval">constant</kw>,
  2140. any of the MathML content container types 
  2141. (<kw role="attval">vector</kw>,
  2142. <kw role="attval">matrix</kw>,
  2143. <kw role="attval">set</kw>,
  2144. <kw role="attval">list</kw> etc.)
  2145. or their types.</p></descr>
  2146. </attribute>
  2147. </interface>
  2148.  
  2149. <interface name='MathMLCsymbolElement' inherits='MathMLContentToken' id='dom_CsymbolElement'>
  2150. <descr><p>This interface represents the <intref ref="contm_csymbol"><kw role="element">csymbol</kw></intref>
  2151. element. Although it currently has no attributes or methods distinct from those of <kw>MathMLContentToken</kw>,
  2152. a separate interface is provided to emphasize the conceptual role of the <kw role="element">csymbol</kw> element.
  2153. </p>
  2154. <?generate-idl?>
  2155. </descr>
  2156. </interface>
  2157. </definitions>
  2158. </div4>
  2159.  
  2160. <div4><head>Content Container Interfaces</head>
  2161.  
  2162. <p>We have added interfaces for content elements that are containers,
  2163. i.e. elements that may contain child elements corresponding to arguments,
  2164. bound variables, conditions, or lower or upper limits.</p>
  2165.  
  2166. <definitions>
  2167. <interface name='MathMLContentContainer' inherits='MathMLContentElement, MathMLContainer' id='dom_ContentContainer'>
  2168. <descr><p>This interface supports the MathML Content elements that may
  2169. contain child Content elements. The elements directly supported by <kw>MathMLContentContainer</kw> 
  2170. include: <intref ref="contm_reln"><kw role="element">reln</kw></intref> (deprecated), 
  2171. <intref ref="contm_lambda"><kw role="element">lambda</kw></intref>, <intref ref="contm_lowlimit"><kw role="element">lowlimit</kw></intref>, 
  2172. <intref ref="contm_uplimit"><kw role="element">uplimit</kw></intref>, <intref ref="contm_degree"><kw role="element">degree</kw></intref>,
  2173. <intref ref="contm_domainofapplication"><kw role="element">domainofapplication</kw></intref>, and <intref ref="contm_momentabout"><kw role="element">momentabout</kw></intref>.
  2174. Interfaces derived from MathMLContentContainer support the elements <intref ref="contm_apply"><kw role="element">apply</kw></intref>, 
  2175. <intref ref="contm_fn"><kw role="element">fn</kw></intref>, <intref ref="contm_interval"><kw role="element">interval</kw></intref>, 
  2176. <intref ref="contm_condition"><kw role="element">condition</kw></intref>, <intref ref="contm_declare"><kw role="element">declare</kw></intref>, 
  2177. <intref ref="contm_bvar"><kw role="element">bvar</kw></intref>, <intref ref="contm_set"><kw role="element">set</kw></intref>, 
  2178. <intref ref="contm_list"><kw role="element">list</kw></intref>, <intref ref="contm_vector"><kw role="element">vector</kw></intref>, 
  2179. <intref ref="contm_matrix"><kw role="element">matrix</kw></intref>, and <intref ref="contm_matrixrow"><kw role="element">matrixrow</kw></intref>.
  2180. </p>
  2181. <?generate-idl?>
  2182. </descr>
  2183. <attribute name='nBoundVariables' type='unsigned long' readonly='yes'>
  2184. <descr><p>The number of <kw role="element">bvar</kw> 
  2185. child elements of this element.</p></descr>
  2186. </attribute>
  2187. <attribute name='condition' type='MathMLConditionElement' readonly='no'>
  2188. <descr><p>This attribute represents the <kw role="element">condition</kw> child 
  2189. element of this node. See  <specref ref="contm_opwithqual"/>.</p></descr>
  2190. <setraises>
  2191. <exception name='DOMException'>
  2192. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2193. <kw role="element">condition</kw> element. In particular, raised if 
  2194. this element is not a <kw role="element">apply</kw>, 
  2195. <kw role="element">set</kw>, or <kw role="element">list</kw>.</p></descr></exception>
  2196. </setraises>
  2197. </attribute>
  2198. <attribute name='opDegree' type='MathMLElement' readonly='no'>
  2199. <descr><p>This attribute represents the <kw role="element">degree</kw> child 
  2200. element of this node. This expresses, for instance, the degree of differentiation
  2201. if this element is a <kw role="element">bvar</kw> child of an 
  2202. <kw role="element">apply</kw> element whose first child is a <intref ref="contm_diff"><kw role="element">diff</kw></intref>
  2203. or <intref ref="contm_partialdiff"><kw role="element">partialdiff</kw></intref>. If this is an
  2204. <kw role="element">apply</kw> element whose first child is a <kw role="element">partialdiff</kw>,
  2205. the <kw>opDegree</kw> attribute, if present, represents the total degree of differentiation.
  2206. See  <specref ref="contm_opwithqual"/>.</p></descr>
  2207. <setraises>
  2208. <exception name='DOMException'>
  2209. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2210. <kw role="element">degree</kw> element. In particular, raised if 
  2211. this element is not a <kw role="element">bvar</kw> or <kw role="element">apply</kw>.</p></descr></exception>
  2212. </setraises>
  2213. </attribute>
  2214. <attribute name='domainOfApplication' type='MathMLElement' readonly='no'>
  2215. <descr><p>This attribute represents the <kw role="element">domainofapplication</kw> child 
  2216. element of this node, if present. This may express, for instance, the domain of integration
  2217. if this element is an <kw role="element">apply</kw> element whose first child is an integral operator
  2218. (<intref ref="contm_int"><kw role="element">int</kw></intref>). See <specref ref="contm_opwithqual"/>.</p></descr>
  2219. <setraises>
  2220. <exception name='DOMException'>
  2221. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2222. <kw role="element">domainofapplication</kw> element.</p></descr></exception>
  2223. </setraises>
  2224. </attribute>
  2225. <attribute name='momentAbout' type='MathMLElement' readonly='no'>
  2226. <descr><p>This attribute represents the <kw role="element">momentabout</kw> child 
  2227. element of this node, if present. This typically expresses the point about which a statistical
  2228. moment is to be calculated, if this element is an <kw role="element">apply</kw> element whose 
  2229. first child is a <intref ref="contm_moment"><kw role="element">moment</kw></intref>. See 
  2230. <specref ref="contm_opwithqual"/>.</p></descr>
  2231. <setraises>
  2232. <exception name='DOMException'>
  2233. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2234. <kw role="element">momentabout</kw> element. In particular, raised if 
  2235. this element is not an <kw role="element">apply</kw> whose first child is a <kw role="element">moment</kw>.</p></descr></exception>
  2236. </setraises>
  2237. </attribute>
  2238. <method name='getBoundVariable'>
  2239. <descr><p>This method retrieves the <kw>index</kw>-th
  2240. <intref ref="dom_BvarElement"><kw>MathMLBvarElement</kw></intref> child of the <kw>MathMLElement</kw>. Note that
  2241. only <kw role="element">bvar</kw> child elements are counted in determining
  2242. the <kw>index</kw>-th bound variable.</p></descr>
  2243. <parameters>
  2244. <param name='index' type='unsigned long' attr='in'>
  2245. <descr><p>The one-based index into the bound variable
  2246. children of this element of the <kw>MathMLBvarElement</kw> to 
  2247. be retrieved.</p></descr>
  2248. </param>
  2249. </parameters>
  2250. <returns type='MathMLBvarElement'>
  2251. <descr><p>The <kw>MathMLBvarElement</kw> representing
  2252. the <kw>index</kw>-th <kw role="element">bvar</kw> child of this element.</p></descr></returns>
  2253. <raises>
  2254. </raises>
  2255. </method>
  2256. <method name='insertBoundVariable'>
  2257. <descr><p>This method inserts a <kw>MathMLBvarElement</kw> 
  2258. as a child node before the current <kw>index</kw>-th bound variable child
  2259. of this <kw>MathMLElement</kw>. If <kw>index</kw> is 0, <kw>newBVar</kw>
  2260. is appended as the last bound variable child. This has the effect of adding 
  2261. a bound variable to the expression this element represents. Note that the 
  2262. new bound variable is inserted as the <kw>index</kw>-th <kw role="element">
  2263. bvar</kw> child node, not necessarily as the <kw> index</kw>-th child node. 
  2264. The point of the method is to allow insertion of bound variables without 
  2265. requiring the caller to calculate the exact order of child qualifier 
  2266. elements.</p></descr>
  2267. <parameters>
  2268. <param name='newBVar' type='MathMLBvarElement' attr='in'>
  2269. <descr><p>A <kw>MathMLBvarElement</kw> representing
  2270. the <kw role="element">bvar</kw> element being added.</p></descr>
  2271. </param>
  2272. <param name='index' type='unsigned long' attr='in'>
  2273. <descr><p>The one-based index into the bound variable
  2274. children of this element before which <kw>newBVar</kw> is to be inserted.</p></descr>
  2275. </param>
  2276. </parameters>
  2277. <returns type='MathMLBvarElement'>
  2278. <descr><p>The <kw>MathMLBvarElement</kw> being
  2279. added.</p></descr></returns>
  2280. <raises>
  2281. <exception name='DOMException'>
  2282. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit child 
  2283. <kw role="element">bvar</kw> elements.</p></descr></exception>
  2284. </raises>
  2285. </method>
  2286. <method name='setBoundVariable'>
  2287. <descr><p>This method sets the <kw>index</kw>-th bound 
  2288. variable child of this <kw>MathMLElement</kw> to <kw>newBVar</kw>. This 
  2289. has the effect of setting a bound variable in the expression this element 
  2290. represents. Note that the new bound variable is inserted as the <kw>index</kw>-th <kw role="element">bvar</kw> child node, not necessarily 
  2291. as the <kw> index</kw>-th child node. The point of the method is to allow 
  2292. insertion of bound variables without requiring the caller to calculate the 
  2293. exact order of child qualifier elements. If there is already a 
  2294. <kw role="element">bvar</kw> at the <kw>index</kw>-th position, it is 
  2295. replaced by <kw>newBVar</kw>.</p></descr>
  2296. <parameters>
  2297. <param name='newBVar' type='MathMLBvarElement' attr='in'>
  2298. <descr><p>The new <kw>MathMLBvarElement</kw> 
  2299. child of this element being set.</p></descr>
  2300. </param>
  2301. <param name='index' type='unsigned long' attr='in'>
  2302. <descr><p>The one-based index into the bound variable
  2303. children of this element at which <kw>newBVar</kw> is to be inserted.</p></descr>
  2304. </param>
  2305. </parameters>
  2306. <returns type='MathMLBvarElement'>
  2307. <descr><p>The <kw>MathMLBvarElement</kw> being
  2308. set.</p></descr></returns>
  2309. <raises>
  2310. <exception name='DOMException'>
  2311. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit child 
  2312. <kw role="element">bvar</kw> elements.</p></descr></exception>
  2313. </raises>
  2314. </method>
  2315. <method name='deleteBoundVariable'>
  2316. <descr><p>This method deletes the <kw>index</kw>-th
  2317. <kw>MathMLBvarElement</kw> child of the <kw>MathMLElement</kw>. This has the
  2318. effect of removing this bound variable from the list of qualifiers
  2319. affecting the element this represents.</p></descr>
  2320. <parameters>
  2321. <param name='index' type='unsigned long' attr='in'>
  2322. <descr><p>The one-based index into the bound variable
  2323. children of this element of the <kw>MathMLBvarElement</kw> to 
  2324. be removed.</p></descr>
  2325. </param>
  2326. </parameters>
  2327. <returns type='void'>
  2328. <descr><p>None.</p></descr></returns>
  2329. <raises>
  2330. </raises>
  2331. </method>
  2332. <method name='removeBoundVariable'>
  2333. <descr><p>This method removes the <kw>index</kw>-th
  2334. <kw>MathMLBvarElement</kw> child of the <kw>MathMLElement</kw> and returns
  2335. it to the caller. This has the effect of removing this bound variable from
  2336. the list of qualifiers affecting the element this represents.</p></descr>
  2337. <parameters>
  2338. <param name='index' type='unsigned long' attr='in'>
  2339. <descr><p>The one-based index into the bound variable
  2340. children of this element of the <kw>MathMLBvarElement</kw> to 
  2341. be removed.</p></descr>
  2342. </param>
  2343. </parameters>
  2344. <returns type='MathMLBvarElement'>
  2345. <descr><p>The <kw>MathMLBvarElement</kw> 
  2346. being removed.</p></descr></returns>
  2347. <raises>
  2348. </raises>
  2349. </method>
  2350. </interface>
  2351.  
  2352. <interface name='MathMLApplyElement' inherits='MathMLContentContainer' id='dom_ApplyElement'>
  2353. <descr><p>The <intref ref="contm_apply"><kw role="element">apply</kw></intref> element allows a function or 
  2354. operator to be applied to its arguments.
  2355. </p>
  2356. <?generate-idl?>
  2357. </descr>
  2358. <attribute name='operator' type='MathMLElement' readonly='no'>
  2359. <descr><p>The MathML element representing the function or operator that is 
  2360. applied to the list of arguments.</p></descr>
  2361. </attribute>
  2362. <attribute name='domainOfApplication' type='MathMLElement' readonly='no'>
  2363. <descr><p>This attribute represents the <intref ref="contm_domainofapplication"><kw role="element">domainofapplication</kw></intref>
  2364. child element of this node (if any). This expresses, for instance, the domain of integration
  2365. if this is an <kw role="element">apply</kw> element whose first child is a 
  2366. <intref ref="contm_int"><kw role="element">int</kw></intref>. See  <specref ref="contm_opwithqual"/>.</p></descr>
  2367. <setraises>
  2368. <exception name='DOMException'>
  2369. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2370. <intref ref="contm_domainofapplication"><kw role="element">domainofapplication</kw></intref> element.</p></descr></exception>
  2371. </setraises>
  2372. </attribute>
  2373. <attribute name='lowLimit' type='MathMLElement' readonly='no'>
  2374. <descr><p>This attribute represents the <intref ref="contm_lowlimit"><kw role="element">lowlimit</kw></intref>
  2375. child element of this node (if any). This expresses, for instance, the lower limit of 
  2376. integration if this is an <kw role="element">apply</kw> element whose first 
  2377. child is a <intref ref="contm_int"><kw role="element">int</kw></intref>. See  <specref ref="contm_opwithqual"/>.</p></descr>
  2378. <setraises>
  2379. <exception name='DOMException'>
  2380. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2381. <kw role="element">lowlimit</kw> element. In particular, raised if 
  2382. this element is not an <kw role="element">apply</kw> element whose first child
  2383. is an <kw role="element">int</kw>, <intref ref="contm_sum"><kw role="element">sum</kw></intref>, 
  2384. <intref ref="contm_product"><kw role="element">product</kw></intref>, or <intref ref="contm_limit"><kw role="element">limit</kw></intref> element.</p></descr></exception>
  2385. </setraises>
  2386. </attribute>
  2387. <attribute name='upLimit' type='MathMLElement' readonly='no'>
  2388. <descr><p>This attribute represents the <intref ref="contm_uplimit"><kw role="element">uplimit</kw></intref>
  2389. child element of this node (if any). This expresses, for instance, the upper limit of 
  2390. integration if this is an <kw role="element">apply</kw> element whose first 
  2391. child is a <kw role="element">int</kw>. See  <specref ref="contm_opwithqual"/>.</p></descr>
  2392. <setraises>
  2393. <exception name='DOMException'>
  2394. <descr><p>HIERARCHY_REQUEST_ERR: Raised if this element does not permit a child
  2395. <kw role="element">uplimit</kw> element. In particular, raised if 
  2396. this element is not an <kw role="element">apply</kw> element whose first child
  2397. is an <kw role="element">int</kw>, <kw role="element">sum</kw>, 
  2398. or <kw role="element">product</kw> element.</p></descr></exception>
  2399. </setraises>
  2400. </attribute>
  2401. </interface>
  2402.  
  2403. <interface name='MathMLFnElement' inherits='MathMLContentContainer' id='dom_FnElement'>
  2404. <descr><p>The <intref ref="contm_fn"><kw role="element">fn</kw></intref> element makes explicit the fact that 
  2405. a more general MathML object is intended to be used in the same manner as if it
  2406. were a pre-defined function such as <intref ref="contm_trig"><kw role="element">sin</kw></intref> or 
  2407. <intref ref="contm_plus"><kw role="element">plus</kw></intref>.
  2408. </p>
  2409. <?generate-idl?>
  2410. </descr>
  2411. <attribute name='definitionURL' type='DOMString' readonly='no'>
  2412. <descr><p>A URI pointing to a definition for this function-type element. Note 
  2413. that there is no stipulation about the form this definition may take!</p></descr>
  2414. </attribute>
  2415. <attribute name='encoding' type='DOMString' readonly='no'>
  2416. <descr><p>A string describing the syntax in which the definition
  2417. located at <intref ref="contm_attrib"><kw role="attrib">definitionURL</kw></intref> is given.</p></descr>
  2418. </attribute>
  2419. </interface>
  2420.  
  2421. <interface name='MathMLLambdaElement' inherits='MathMLContentContainer' id='dom_LambdaElement'>
  2422. <descr><p>The <intref ref="contm_lambda"><kw role="element">lambda</kw></intref> element is used to construct a 
  2423. user-defined function from an expression and one or more free variables.
  2424. </p>
  2425. <?generate-idl?>
  2426. </descr>
  2427. <attribute name='expression' type='MathMLElement' readonly='no'>
  2428. <descr><p>The <intref ref="dom_Element"><kw>MathMLElement</kw></intref> representing the expression.
  2429. This is included only as a convenience; getting it should give the same 
  2430. result as <code>MathMLContentContainer::getArgument(1)</code>.</p></descr>
  2431. </attribute>
  2432. </interface>
  2433.  
  2434. <interface name='MathMLSetElement' inherits='MathMLContentContainer' id='dom_SetElement'>
  2435. <descr><p>The <intref ref="contm_set"><kw role="element">set</kw></intref> element is the container element 
  2436. that represents a set of elements. The elements of a set can be defined either
  2437. by explicitly listing the elements, or by using the 
  2438. <intref ref="contm_bvar"><kw role="element">bvar</kw></intref> and <intref ref="contm_condition"><kw role="element">condition</kw></intref> elements.
  2439. </p>
  2440. <?generate-idl?>
  2441. </descr>
  2442. <attribute name='isExplicit' type='boolean' readonly='yes'>
  2443. <descr><p>This is true if the set is specified by giving the list
  2444. of its elements explicitly.</p></descr>
  2445. </attribute>
  2446. <attribute name='type' type='DOMString' readonly='no'>
  2447. <descr><p>The <intref ref="contm_typeattrib"><kw role="attrib">type</kw></intref> attribute of 
  2448. the represented element. Predefined values are <kw role="attval">normal</kw> 
  2449. and <kw role="attval">multiset</kw>. See
  2450. <specref ref="contm_sets"/> and <specref ref="contm_attrib"/>.</p></descr>
  2451. </attribute>
  2452. </interface>
  2453.  
  2454. <interface name='MathMLListElement' inherits='MathMLContentContainer' id='dom_ListElement'>
  2455. <descr><p>The <intref ref="contm_list"><kw role="element">list</kw></intref> element is the container element 
  2456. which represents a list of elements. Elements can be defined either by 
  2457. explicitly listing the elements, or by using the <intref ref="contm_bvar"><kw role="element">bvar</kw></intref> 
  2458. and <intref ref="contm_condition"><kw role="element">condition</kw></intref> elements.
  2459. </p>
  2460. <?generate-idl?>
  2461. </descr>
  2462. <attribute name='isExplicit' type='boolean' readonly='yes'>
  2463. <descr><p>This is true if the list is specified 
  2464. by giving its elements explicitly.</p></descr>
  2465. </attribute>
  2466. <attribute name='ordering' type='DOMString' readonly='no'>
  2467. <descr><p>The <intref ref="contm_attrib"><kw role="attrib">order</kw></intref> attribute of 
  2468. the represented element. Predefined values are <kw role="attval">numeric</kw> 
  2469. and <kw role="attval">lexicographic</kw>. See
  2470. <specref ref="contm_sets"/> and <specref ref="contm_attrib"/>.</p></descr>
  2471. </attribute>
  2472. </interface>
  2473.  
  2474. <interface name='MathMLBvarElement' inherits='MathMLContentContainer' id='dom_BvarElement'>
  2475. <descr><p>This interface represents the MathML bound variable
  2476. element <intref ref="contm_bvar"><kw role="element">bvar</kw></intref>. The interface currently 
  2477. provides no functionality beyond that of <kw>MathMLContentContainer</kw>,
  2478. but is useful for defining the type of bound variable access functions.
  2479. </p>
  2480. <?generate-idl?>
  2481. </descr>
  2482. </interface>
  2483.  
  2484. </definitions>
  2485. </div4>
  2486.  
  2487. <div4><head>Content Leaf Element Interfaces</head>
  2488.  
  2489. <definitions>
  2490. <interface name='MathMLPredefinedSymbol' inherits='MathMLContentElement' id='dom_PredefinedSymbol'>
  2491. <descr><p>This interface supports all of the empty built-in 
  2492. operator, relation, function, and constant and symbol elements that have 
  2493. the <intref ref="contm_attrib"><kw role="attrib">definitionURL</kw></intref> and <intref ref="contm_attrib"><kw role="attrib">encoding</kw></intref> 
  2494. attributes in addition to the standard set of attributes. The elements 
  2495. supported in order of their appearance in <specref ref="contm_elem"/> are:
  2496. <intref ref="contm_inverse"><kw role="element">inverse</kw></intref>,
  2497. <intref ref="contm_compose"><kw role="element">compose</kw></intref>,
  2498. <intref ref="contm_ident"><kw role="element">ident</kw></intref>,
  2499. <intref ref="contm_domain"><kw role="element">domain</kw></intref>,
  2500. <intref ref="contm_codomain"><kw role="element">codomain</kw></intref>,
  2501. <intref ref="contm_image"><kw role="element">image</kw></intref>,
  2502. <intref ref="contm_quotient"><kw role="element">quotient</kw></intref>,
  2503. <intref ref="contm_exp"><kw role="element">exp</kw></intref>,
  2504. <intref ref="contm_factorial"><kw role="element">factorial</kw></intref>,
  2505. <intref ref="contm_divide"><kw role="element">divide</kw></intref>,
  2506. <intref ref="contm_maxmin"><kw role="element">max</kw></intref>,
  2507. <intref ref="contm_maxmin"><kw role="element">min</kw></intref>,
  2508. <intref ref="contm_minus"><kw role="element">minus</kw></intref>,
  2509. <intref ref="contm_plus"><kw role="element">plus</kw></intref>,
  2510. <intref ref="contm_power"><kw role="element">power</kw></intref>,
  2511. <intref ref="contm_rem"><kw role="element">rem</kw></intref>,
  2512. <intref ref="contm_times"><kw role="element">times</kw></intref>,
  2513. <intref ref="contm_root"><kw role="element">root</kw></intref>,
  2514. <intref ref="contm_gcd"><kw role="element">gcd</kw></intref>,
  2515. <intref ref="contm_and"><kw role="element">and</kw></intref>,
  2516. <intref ref="contm_or"><kw role="element">or</kw></intref>,
  2517. <intref ref="contm_xor"><kw role="element">xor</kw></intref>,
  2518. <intref ref="contm_not"><kw role="element">not</kw></intref>,
  2519. <intref ref="contm_implies"><kw role="element">implies</kw></intref>,
  2520. <intref ref="contm_forall"><kw role="element">forall</kw></intref>,
  2521. <intref ref="contm_exists"><kw role="element">exists</kw></intref>,
  2522. <intref ref="contm_abs"><kw role="element">abs</kw></intref>,
  2523. <intref ref="contm_conjugate"><kw role="element">conjugate</kw></intref>,
  2524. <intref ref="contm_arg"><kw role="element">arg</kw></intref>,
  2525. <intref ref="contm_real"><kw role="element">real</kw></intref>,
  2526. <intref ref="contm_imaginary"><kw role="element">imaginary</kw></intref>,
  2527. <intref ref="contm_lcm"><kw role="element">lcm</kw></intref>,
  2528. <intref ref="contm_floor"><kw role="element">floor</kw></intref>,
  2529. <intref ref="contm_ceiling"><kw role="element">ceiling</kw></intref>,
  2530. <intref ref="contm_eq"><kw role="element">eq</kw></intref>,
  2531. <intref ref="contm_neq"><kw role="element">neq</kw></intref>,
  2532. <intref ref="contm_gt"><kw role="element">gt</kw></intref>,
  2533. <intref ref="contm_lt"><kw role="element">lt</kw></intref>,
  2534. <intref ref="contm_geq"><kw role="element">geq</kw></intref>,
  2535. <intref ref="contm_leq"><kw role="element">leq</kw></intref>,
  2536. <intref ref="contm_equivalent"><kw role="element">equivalent</kw></intref>,
  2537. <intref ref="contm_approx"><kw role="element">approx</kw></intref>,
  2538. <intref ref="contm_factorof"><kw role="element">factorof</kw></intref>,
  2539. <intref ref="contm_ln"><kw role="element">ln</kw></intref>,
  2540. <intref ref="contm_log"><kw role="element">log</kw></intref>,
  2541. <intref ref="contm_int"><kw role="element">int</kw></intref>,
  2542. <intref ref="contm_diff"><kw role="element">diff</kw></intref>,
  2543. <intref ref="contm_partialdiff"><kw role="element">partialdiff</kw></intref>,
  2544. <intref ref="contm_divergence"><kw role="element">divergence</kw></intref>,
  2545. <intref ref="contm_grad"><kw role="element">grad</kw></intref>,
  2546. <intref ref="contm_curl"><kw role="element">curl</kw></intref>,
  2547. <intref ref="contm_laplacian"><kw role="element">laplacian</kw></intref>,
  2548. <intref ref="contm_union"><kw role="element">union</kw></intref>,
  2549. <intref ref="contm_intersect"><kw role="element">intersect</kw></intref>,
  2550. <intref ref="contm_in"><kw role="element">in</kw></intref>,
  2551. <intref ref="contm_notin"><kw role="element">notin</kw></intref>,
  2552. <intref ref="contm_subset"><kw role="element">subset</kw></intref>,
  2553. <intref ref="contm_prsubset"><kw role="element">prsubset</kw></intref>,
  2554. <intref ref="contm_notsubset"><kw role="element">notsubset</kw></intref>,
  2555. <intref ref="contm_notprsubset"><kw role="element">notprsubset</kw></intref>,
  2556. <intref ref="contm_setdiff"><kw role="element">setdiff</kw></intref>,
  2557. <intref ref="contm_card"><kw role="element">card</kw></intref>,
  2558. <intref ref="contm_cartesianproduct"><kw role="element">cartesianproduct</kw></intref>,
  2559. <intref ref="contm_sum"><kw role="element">sum</kw></intref>,
  2560. <intref ref="contm_product"><kw role="element">product</kw></intref>,
  2561. <intref ref="contm_limit"><kw role="element">limit</kw></intref>,
  2562. <intref ref="contm_tendsto"><kw role="element">tendsto</kw></intref>,
  2563. <intref ref="contm_trig"><kw role="element">sin</kw></intref>,
  2564. <intref ref="contm_trig"><kw role="element">cos</kw></intref>,
  2565. <intref ref="contm_trig"><kw role="element">tan</kw></intref>,
  2566. <intref ref="contm_trig"><kw role="element">sec</kw></intref>,
  2567. <intref ref="contm_trig"><kw role="element">csc</kw></intref>,
  2568. <intref ref="contm_trig"><kw role="element">cot</kw></intref>,
  2569. <intref ref="contm_trig"><kw role="element">sinh</kw></intref>,
  2570. <intref ref="contm_trig"><kw role="element">cosh</kw></intref>,
  2571. <intref ref="contm_trig"><kw role="element">tanh</kw></intref>,
  2572. <intref ref="contm_trig"><kw role="element">sech</kw></intref>,
  2573. <intref ref="contm_trig"><kw role="element">csch</kw></intref>,
  2574. <intref ref="contm_trig"><kw role="element">coth</kw></intref>,
  2575. <intref ref="contm_trig"><kw role="element">arcsin</kw></intref>,
  2576. <intref ref="contm_trig"><kw role="element">arccos</kw></intref>,
  2577. <intref ref="contm_trig"><kw role="element">arctan</kw></intref>,
  2578. <intref ref="contm_trig"><kw role="element">arcsec</kw></intref>,
  2579. <intref ref="contm_trig"><kw role="element">arccsc</kw></intref>,
  2580. <intref ref="contm_trig"><kw role="element">arccot</kw></intref>,
  2581. <intref ref="contm_trig"><kw role="element">arcsinh</kw></intref>,
  2582. <intref ref="contm_trig"><kw role="element">arccosh</kw></intref>,
  2583. <intref ref="contm_trig"><kw role="element">arctanh</kw></intref>,
  2584. <intref ref="contm_trig"><kw role="element">arcsech</kw></intref>,
  2585. <intref ref="contm_trig"><kw role="element">arccsch</kw></intref>,
  2586. <intref ref="contm_trig"><kw role="element">arccoth</kw></intref>,
  2587. <intref ref="contm_mean"><kw role="element">mean</kw></intref>,
  2588. <intref ref="contm_sdev"><kw role="element">sdev</kw></intref>,
  2589. <intref ref="contm_variance"><kw role="element">variance</kw></intref>,
  2590. <intref ref="contm_median"><kw role="element">median</kw></intref>,
  2591. <intref ref="contm_mode"><kw role="element">mode</kw></intref>,
  2592. <intref ref="contm_moment"><kw role="element">moment</kw></intref>,
  2593. <intref ref="contm_determinant"><kw role="element">determinant</kw></intref>,
  2594. <intref ref="contm_transpose"><kw role="element">transpose</kw></intref>,
  2595. <intref ref="contm_selector"><kw role="element">selector</kw></intref>,
  2596. <intref ref="contm_vectorproduct"><kw role="element">vectorproduct</kw></intref>,
  2597. <intref ref="contm_scalarproduct"><kw role="element">scalarproduct</kw></intref>,
  2598. <intref ref="contm_outerproduct"><kw role="element">outerproduct</kw></intref>,
  2599. <intref ref="contm_integers"><kw role="element">integers</kw></intref>,
  2600. <intref ref="contm_rationals"><kw role="element">reals</kw></intref>,
  2601. <intref ref="contm_rationals"><kw role="element">rationals</kw></intref>,
  2602. <intref ref="contm_naturalnumbers"><kw role="element">naturalnumbers</kw></intref>,
  2603. <intref ref="contm_complexes"><kw role="element">complexes</kw></intref>,
  2604. <intref ref="contm_primes"><kw role="element">primes</kw></intref>,
  2605. <intref ref="contm_exponentiale"><kw role="element">exponentiale</kw></intref>,
  2606. <intref ref="contm_imaginaryi"><kw role="element">imaginaryi</kw></intref>,
  2607. <intref ref="contm_notanumber"><kw role="element">notanumber</kw></intref>,
  2608. <intref ref="contm_true"><kw role="element">true</kw></intref>,
  2609. <intref ref="contm_false"><kw role="element">false</kw></intref>,
  2610. <intref ref="contm_emptyset"><kw role="element">emptyset</kw></intref>,
  2611. <intref ref="contm_pi"><kw role="element">pi</kw></intref>,
  2612. <intref ref="contm_eulergamma"><kw role="element">eulergamma</kw></intref>, and
  2613. <intref ref="contm_infinity"><kw role="element">infinity</kw></intref>.
  2614. </p>
  2615. <?generate-idl?>
  2616. </descr>
  2617. <attribute name='definitionURL' type='DOMString' readonly='no'>
  2618. <descr><p>A string that provides an override to the default semantics, or 
  2619. provides a more specific definition</p></descr>
  2620. </attribute>
  2621. <attribute name='encoding' type='DOMString' readonly='no'>
  2622. <descr><p>A string describing the syntax in which the definition
  2623. located at <kw role="attrib">definitionURL</kw> is given.</p></descr>
  2624. </attribute>
  2625. <attribute name='arity' type='DOMString' readonly='no'>
  2626. <descr><p>A string representing the number of arguments. Values include 
  2627. 0, 1, ... and <kw>variable</kw>.</p></descr>
  2628. </attribute>
  2629. <attribute name='symbolName' type='DOMString' readonly='yes'>
  2630. <descr><p>A string giving the name of the MathML element represented.
  2631. This is a convenience attribute only; accessing it should be synonymous with
  2632. accessing the <kw>Element::tagName</kw> attribute.</p></descr>
  2633. </attribute>
  2634. </interface>
  2635.  
  2636. </definitions>
  2637. </div4>
  2638.  
  2639. <div4><head>Other Content Element Interfaces</head>
  2640. <definitions>
  2641. <interface name='MathMLIntervalElement' inherits='MathMLContentElement' id='dom_IntervalElement'>
  2642. <descr><p>The <intref ref="contm_interval"><kw role="element">interval</kw></intref> element is used to represent 
  2643. simple mathematical intervals on the real number line. It contains either two 
  2644. child elements that evaluate to real numbers or one child element that is a 
  2645. condition for defining membership in the interval.
  2646. </p>
  2647. <?generate-idl?>
  2648. </descr>
  2649. <attribute name='closure' type='DOMString' readonly='no'>
  2650. <descr><p>A string with value <kw role="attval">open</kw>,
  2651. <kw role="attval">closed</kw>,
  2652. <kw role="attval">open-closed</kw> or
  2653. <kw role="attval">closed-open</kw>.
  2654. The default value is <kw role="attval">closed</kw>.</p></descr>
  2655. </attribute>
  2656. <attribute name='start' type='MathMLCnElement' readonly='no'>
  2657. <descr><p>A <intref ref="dom_CnElement"><kw>MathMLCnElement</kw></intref> representing the real number defining
  2658. the start of the interval. If <kw>end</kw> has not already been 
  2659. set, it becomes the same as <kw>start</kw> until set otherwise.</p></descr>
  2660. </attribute>
  2661. <attribute name='end' type='MathMLCnElement' readonly='no'>
  2662. <descr><p>A <kw>MathMLCnElement</kw> representing the real number defining
  2663. the end of the interval. If <kw>start</kw> has not
  2664. already been set, it becomes the same as <kw>end</kw> until set otherwise. </p></descr>
  2665. </attribute>
  2666. </interface>
  2667.  
  2668. <interface name='MathMLConditionElement' inherits='MathMLContentElement' id='dom_ConditionElement'>
  2669. <descr><p>The <intref ref="contm_condition"><kw role="element">condition</kw></intref> element is used to place a 
  2670. condition on one or more free variables or identifiers.
  2671. </p>
  2672. <?generate-idl?>
  2673. </descr>
  2674. <attribute name='condition' type='MathMLApplyElement' readonly='no'>
  2675. <descr><p>A <intref ref="dom_ApplyElement"><kw>MathMLApplyElement</kw></intref> that represents the condition.</p></descr>
  2676. </attribute>
  2677. </interface>
  2678.  
  2679. <interface name='MathMLDeclareElement' inherits='MathMLContentElement' id='dom_DeclareElement'>
  2680. <descr><p>The <intref ref="contm_declare"><kw role="element">declare</kw></intref> construct has two primary roles. 
  2681. The first is to change or set the default attribute values for a specific 
  2682. mathematical object. The second is to establish an association between a 
  2683. <quote>name</quote> and an object.
  2684. </p>
  2685. <?generate-idl?>
  2686. </descr>
  2687. <attribute name='type' type='DOMString' readonly='no'>
  2688. <descr><p>A string indicating the type of the identifier. It must be compatible
  2689. with the type of the <kw>constructor</kw>, if a <kw>constructor</kw> is 
  2690. present. The type is inferred from the <kw>constructor</kw> if present, 
  2691. otherwise it must be specified.</p></descr>
  2692. </attribute>
  2693. <attribute name='nargs' type='unsigned long' readonly='no'>
  2694. <descr><p>If the identifier is a function, this attribute 
  2695. specifies the number of arguments the function takes. This represents the 
  2696. <kw role="element">declare</kw> element's <intref ref="contm_attrib"><kw role="attrib">nargs</kw></intref> attribute;
  2697. see <specref ref="contm_declare"/>.</p></descr>
  2698. </attribute>
  2699. <attribute name='occurrence' type='DOMString' readonly='no'>
  2700. <descr><p>A string with the values <kw role="attval"> prefix</kw>, 
  2701. <kw role="attval">infix</kw>, <kw role="attval">postfix</kw>, or 
  2702. <kw role="attval">function-model</kw>.</p></descr>
  2703. </attribute>
  2704. <attribute name='definitionURL' type='DOMString' readonly='no'>
  2705. <descr><p>A URI specifying the detailed semantics of the
  2706. element.</p></descr>
  2707. </attribute>
  2708. <attribute name='encoding' type='DOMString' readonly='no'>
  2709. <descr><p>A description of the syntax used in 
  2710. <intref ref="contm_attrib"><kw role="attrib">definitionURL</kw></intref>.</p></descr>
  2711. </attribute>
  2712. <attribute name='identifier' type='MathMLCiElement' readonly='no'>
  2713. <descr><p>A <intref ref="dom_CiElement"><kw>MathMLCiElement</kw></intref> representing the name being declared.</p></descr>
  2714. </attribute>
  2715. <attribute name='constructor' type='MathMLElement' readonly='no'>
  2716. <descr><p>An optional <intref ref="dom_Element"><kw>MathMLElement</kw></intref> 
  2717. providing an initial value for the object being declared.</p></descr>
  2718. </attribute>
  2719. </interface>
  2720.  
  2721. <interface name='MathMLVectorElement' inherits='MathMLContentElement' id='dom_VectorElement'>
  2722. <descr><p><intref ref="contm_vector"><kw role="element">vector</kw></intref> is the container element for a 
  2723. vector.
  2724. </p>
  2725. <?generate-idl?>
  2726. </descr>
  2727. <attribute name='ncomponents' type='unsigned long' readonly='yes'>
  2728. <descr><p>The number of components in the vector.</p></descr>
  2729. </attribute>
  2730. <method name='getComponent'>
  2731. <descr><p>A convenience method to retrieve a component.</p></descr>
  2732. <parameters>
  2733. <param name='index' type='unsigned long' attr='in'>
  2734. <descr><p>Position of the component in the list of components. The first 
  2735. element is numbered 1.</p></descr>
  2736. </param>
  2737. </parameters>
  2738. <returns type='MathMLContentElement'>
  2739. <descr><p>The <kw>MathMLContentElement</kw> component at 
  2740. the position specified by <kw>index</kw>. If <kw>index</kw> is not a valid 
  2741. index (i.e. is greater than the number of components of the vector or less 
  2742. than 1), a <kw>null MathMLContentElement</kw> is returned.</p></descr></returns>
  2743. <raises>
  2744. </raises>
  2745. </method>
  2746. <method name='insertComponent'>
  2747. <descr><p>A convenience method to insert a new component
  2748. in the vector before the current <kw>index</kw>-th component. If <kw>index</kw> is 0 or is one more than the number of components currently in the
  2749. vector, <kw>newComponent</kw> is appended as the last component of the
  2750. vector.</p></descr>
  2751. <parameters>
  2752. <param name='newComponent' type='MathMLContentElement' attr='in'>
  2753. <descr><p>A <kw>MathMLContentElement</kw> representing 
  2754. the component that is to be added.</p></descr>
  2755. </param>
  2756. <param name='index' type='unsigned long' attr='in'>
  2757. <descr><p>Position of the component in the list of 
  2758. components. The first component is numbered 1.</p></descr>
  2759. </param>
  2760. </parameters>
  2761. <returns type='MathMLContentElement'>
  2762. <descr><p>The <kw>MathMLContentElement</kw> child 
  2763. of this <kw>MathMLVectorElement</kw> representing the new component in the DOM.</p></descr></returns>
  2764. <raises>
  2765. <exception name='DOMException'>
  2766. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2767. than one more than the current number of components of this <kw role="element">
  2768. vector</kw> element.</p></descr></exception>
  2769. </raises>
  2770. </method>
  2771. <method name='setComponent'>
  2772. <descr><p>A convenience method to set the <kw>index</kw>-th 
  2773. component of the vector to <kw>newComponent</kw>. If <kw>index</kw> is one 
  2774. more than the current number of components, <kw>newComponent</kw> is 
  2775. appended as the last component.</p></descr>
  2776. <parameters>
  2777. <param name='newComponent' type='MathMLContentElement' attr='in'>
  2778. <descr><p>A <kw>MathMLContentElement</kw> representing
  2779. the element that is to be the <kw>index</kw>-th component of the vector.</p></descr>
  2780. </param>
  2781. <param name='index' type='unsigned long' attr='in'>
  2782. <descr><p>Position of the component in the list of 
  2783. components. The first element is numbered 1.</p></descr>
  2784. </param>
  2785. </parameters>
  2786. <returns type='MathMLContentElement'>
  2787. <descr><p>The <kw>MathMLContentElement</kw> child 
  2788. of this <kw>MathMLVectorElement</kw> that represents the new component in
  2789. the DOM.</p></descr></returns>
  2790. <raises>
  2791. <exception name='DOMException'>
  2792. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2793. than one more than the current number of components of this <kw role="element">
  2794. vector</kw> element.</p></descr></exception>
  2795. </raises>
  2796. </method>
  2797. <method name='deleteComponent'>
  2798. <descr><p>A convenience method to delete an element. The 
  2799. deletion changes the indices of the following components.</p></descr>
  2800. <parameters>
  2801. <param name='index' type='unsigned long' attr='in'>
  2802. <descr><p>Position of the component in the vector. 
  2803. The position of the first component is 1</p></descr>
  2804. </param>
  2805. </parameters>
  2806. <returns type=''>
  2807. <descr><p>None</p></descr></returns>
  2808. <raises>
  2809. <exception name='DOMException'>
  2810. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2811. than the current number of components of this <kw role="element">vector</kw> 
  2812. element.</p></descr></exception>
  2813. </raises>
  2814. </method>
  2815. <method name='removeComponent'>
  2816. <descr><p>A convenience method to remove a component from 
  2817. a vector and return it to the caller. If index is greater than the number of
  2818. components or is 0, a <kw>null MathMLContentElement</kw> is returned.</p></descr>
  2819. <parameters>
  2820. <param name='index' type='unsigned long' attr='in'>
  2821. <descr><p>Position of the component in the list of 
  2822. components. The first element is numbered 1.</p></descr>
  2823. </param>
  2824. </parameters>
  2825. <returns type='MathMLContentElement'>
  2826. <descr><p>The <kw>MathMLContentElement</kw> component 
  2827. being removed.</p></descr></returns>
  2828. <raises>
  2829. </raises>
  2830. </method>
  2831. </interface>
  2832.  
  2833. <interface name='MathMLMatrixElement' inherits='MathMLContentElement' id='dom_MatrixElement'>
  2834. <descr><p>The <intref ref="contm_matrix"><kw role="element">matrix</kw></intref> element is the container element 
  2835. for <intref ref="contm_matrixrow"><kw role="element">matrixrow</kw></intref> elements. 
  2836. </p>
  2837. <?generate-idl?>
  2838. </descr>
  2839. <attribute name='nrows' type='unsigned long' readonly='yes'>
  2840. <descr><p>The number of rows in the represented matrix.</p></descr>
  2841. </attribute>
  2842. <attribute name='ncols' type='unsigned long' readonly='yes'>
  2843. <descr><p>The number of columns in the represented matrix.</p></descr>
  2844. </attribute>
  2845. <attribute name='rows' type='MathMLNodeList' readonly='yes'>
  2846. <descr><p>The rows of the matrix, returned as a
  2847. <kw>MathMLNodeList</kw> consisting of <kw>MathMLMatrixrowElements</kw>.</p></descr>
  2848. </attribute>
  2849. <method name='getRow'>
  2850. <descr><p>A convenience method to retrieve a specified row.</p></descr>
  2851. <parameters>
  2852. <param name='index' type='unsigned long' attr='in'>
  2853. <descr><p>Position of the row in the list of rows. 
  2854. The first row is numbered 1.</p></descr>
  2855. </param>
  2856. </parameters>
  2857. <returns type='MathMLMatrixrowElement'>
  2858. <descr><p>The <intref ref="dom_MatrixrowElement"><kw>MathMLMatrixrowElement</kw></intref> representing the 
  2859. <kw>index</kw>-th row.</p></descr></returns>
  2860. <raises>
  2861. <exception name='DOMException'>
  2862. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2863. than the number of rows in the matrix.</p></descr></exception>
  2864. </raises>
  2865. </method>
  2866. <method name='insertRow'>
  2867. <descr><p>A convenience method to insert a row before
  2868. the row that is currently the <kw>index</kw>-th row of this <kw role="element">
  2869. matrix</kw>. If <kw>index</kw> is 0, <kw>newRow</kw> is appended as the 
  2870. last row of the matrix.</p></descr>
  2871. <parameters>
  2872. <param name='newRow' type='MathMLMatrixrowElement' attr='in'>
  2873. <descr><p><kw>MathMLMatrixrowElement</kw>
  2874. to be inserted into the matrix.</p></descr>
  2875. </param>
  2876. <param name='index' type='unsigned long' attr='in'>
  2877. <descr><p>Unsigned integer giving the row position 
  2878. before which <kw>newRow</kw> is to be inserted. The first row is numbered 1.</p></descr>
  2879. </param>
  2880. </parameters>
  2881. <returns type='MathMLMatrixrowElement'>
  2882. <descr><p>The <kw>MathMLMatrixrowElement</kw> added. 
  2883. This is the new element within the DOM.</p></descr></returns>
  2884. <raises>
  2885. <exception name='DOMException'>
  2886. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2887. than one more than the number of rows in the matrix.</p>
  2888. <p>HIERARCHY_REQUEST_ERR: Raised if the number of cells in 
  2889. <kw>newRow</kw> doesn't match the number of columns in the matrix.</p></descr></exception>
  2890. </raises>
  2891. </method>
  2892. <method name='setRow'>
  2893. <descr><p>A convenience method to set the value of
  2894. the <kw>index</kw>-th child <kw role="element">matrixrow</kw> element of 
  2895. this element. If there is already a row at the specified index, it is 
  2896. replaced by <kw>newRow</kw>.</p></descr>
  2897. <parameters>
  2898. <param name='newRow' type='MathMLMatrixrowElement' attr='in'>
  2899. <descr><p><kw>MathMLMatrixrowElement</kw>
  2900. representing the <kw role="element">matrixrow</kw>
  2901. which is to become the <kw>index</kw>-th row of the matrix.</p></descr>
  2902. </param>
  2903. <param name='index' type='unsigned long' attr='in'>
  2904. <descr><p>Unsigned integer giving the row 
  2905. which is to be set to <kw>newRow</kw>. The first row is numbered 1.</p></descr>
  2906. </param>
  2907. </parameters>
  2908. <returns type='MathMLMatrixrowElement'>
  2909. <descr><p>The <kw>MathMLMatrixrowElement</kw>
  2910. child of this <kw>MathMLMatrixrowElement</kw> representing <kw>newRow</kw>
  2911. within the DOM.</p></descr></returns>
  2912. <raises>
  2913. <exception name='DOMException'>
  2914. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2915. than the number of rows in the matrix.</p>
  2916. <p>HIERARCHY_REQUEST_ERR: Raised if the number of cells in 
  2917. <kw>newRow</kw> doesn't match the number of columns in the matrix.</p></descr></exception>
  2918. </raises>
  2919. </method>
  2920. <method name='deleteRow'>
  2921. <descr><p>A convenience method to delete a row. The deletion changes the 
  2922. indices of the following rows.</p></descr>
  2923. <parameters>
  2924. <param name='index' type='unsigned long' attr='in'>
  2925. <descr><p>Position of the row to be deleted in the list of rows</p></descr>
  2926. </param>
  2927. </parameters>
  2928. <returns type=''>
  2929. <descr><p>None</p></descr></returns>
  2930. <raises>
  2931. <exception name='DOMException'>
  2932. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2933. than the number of rows in the matrix.</p></descr></exception>
  2934. </raises>
  2935. </method>
  2936. <method name='removeRow'>
  2937. <descr><p>A convenience method to remove a row and return it
  2938. to the caller. The deletion changes the indices of the following rows.</p></descr>
  2939. <parameters>
  2940. <param name='index' type='unsigned long' attr='in'>
  2941. <descr><p>Position of the row to be removed in 
  2942. the list of rows. The first row is numbered 1.</p></descr>
  2943. </param>
  2944. </parameters>
  2945. <returns type='MathMLMatrixrowElement'>
  2946. <descr><p>The <kw>MathMLMatrixrowElement</kw> 
  2947. being removed.</p></descr></returns>
  2948. <raises>
  2949. <exception name='DOMException'>
  2950. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2951. than the number of rows in the matrix.</p></descr></exception>
  2952. </raises>
  2953. </method>
  2954. </interface>
  2955.  
  2956. <interface name='MathMLMatrixrowElement' inherits='MathMLContentElement' id='dom_MatrixrowElement'>
  2957. <descr><p>The <intref ref="contm_matrixrow"><kw role="element">matrixrow</kw></intref> element is the container 
  2958. element for the elements of a <intref ref="contm_matrix"><kw role="element">matrix</kw></intref>. 
  2959. </p>
  2960. <?generate-idl?>
  2961. </descr>
  2962. <attribute name='nEntries' type='unsigned long' readonly='yes'>
  2963. <descr><p>The number of entries in the row.</p></descr>
  2964. </attribute>
  2965. <method name='getEntry'>
  2966. <descr><p>A convenience method to retrieve the contents of 
  2967. an entry by index.</p></descr>
  2968. <parameters>
  2969. <param name='index' type='unsigned long' attr='in'>
  2970. <descr><p>Position of the entry in the row. The 
  2971. first entry is numbered 1.</p></descr>
  2972. </param>
  2973. </parameters>
  2974. <returns type='MathMLContentElement'>
  2975. <descr><p>The <kw>MathMLContentElement</kw> element 
  2976. representing the <kw>index</kw>-th entry in the row.</p></descr></returns>
  2977. <raises>
  2978. <exception name='DOMException'>
  2979. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  2980. than the number of entries in the row.</p></descr></exception>
  2981. </raises>
  2982. </method>
  2983. <method name='insertEntry'>
  2984. <descr><p>A convenience method to insert an entry before the
  2985. current <kw>index</kw>-th entry of the row. If <kw>index</kw> is 0, <kw>newEntry</kw> is appended as the last entry. Note that this method increases
  2986. the size of the <kw role="element">matrixrow</kw>.</p></descr>
  2987. <parameters>
  2988. <param name='newEntry' type='MathMLContentElement' attr='in'>
  2989. <descr><p>The <kw>MathMLContentElement</kw> to be 
  2990. representing the new entry to be inserted into the row.</p></descr>
  2991. </param>
  2992. <param name='index' type='unsigned long' attr='in'>
  2993. <descr><p>The index before which <kw>newEntry</kw> is 
  2994. to be inserted in the row. The first entry is numbered 1.</p></descr>
  2995. </param>
  2996. </parameters>
  2997. <returns type='MathMLContentElement'>
  2998. <descr><p>The <kw>MathMLContentElement</kw> child of
  2999. this <kw>MathMLMatrixrowElement</kw> representing <kw>newEntry</kw> in the
  3000. DOM.</p></descr></returns>
  3001. <raises>
  3002. <exception name='DOMException'>
  3003. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3004. than the number of entries in the row.</p></descr></exception>
  3005. </raises>
  3006. </method>
  3007. <method name='setEntry'>
  3008. <descr><p>A convenience method to set the contents of the
  3009. entry at position <kw>index</kw> in the row to <kw>newEntry</kw>. If there is 
  3010. already a entry at the specified index, it is replaced by the new 
  3011. entry.</p></descr>
  3012. <parameters>
  3013. <param name='newEntry' type='MathMLContentElement' attr='in'>
  3014. <descr><p>The <kw>MathMLContentElement</kw> representing 
  3015. the element that is to be the <kw>index</kw>-th entry.</p></descr>
  3016. </param>
  3017. <param name='index' type='unsigned long' attr='in'>
  3018. <descr><p>The index of the entry that is to be
  3019. set equal to <kw>newEntry</kw>. The first entry is numbered 1.</p></descr>
  3020. </param>
  3021. </parameters>
  3022. <returns type='MathMLContentElement'>
  3023. <descr><p>The <kw>MathMLContentElement</kw> child
  3024. of this <kw>MathMLMatrixRowElement</kw> representing <kw>newEntry</kw> in
  3025. the DOM.</p></descr></returns>
  3026. <raises>
  3027. <exception name='DOMException'>
  3028. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3029. than one more than the number of elements in the row.</p></descr></exception>
  3030. </raises>
  3031. </method>
  3032. <method name='deleteEntry'>
  3033. <descr><p>A convenience method to delete an entry. The 
  3034. deletion changes the indices of the following entries.</p></descr>
  3035. <parameters>
  3036. <param name='index' type='unsigned long' attr='in'>
  3037. <descr><p>Position of the entry to be deleted 
  3038. in the row. The first entry is numbered 1.</p></descr>
  3039. </param>
  3040. </parameters>
  3041. <returns type=''>
  3042. <descr><p>None</p></descr></returns>
  3043. <raises>
  3044. <exception name='DOMException'>
  3045. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3046. than the number of entries in the row.</p></descr></exception>
  3047. </raises>
  3048. </method>
  3049. <method name='removeEntry'>
  3050. <descr><p>A convenience method to remove an entry from the
  3051. row and return the removed entry to the caller.</p></descr>
  3052. <parameters>
  3053. <param name='index' type='unsigned long' attr='in'>
  3054. <descr><p>Position of the entry to be removed 
  3055. from the row. The first entry is numbered 1.</p></descr>
  3056. </param>
  3057. </parameters>
  3058. <returns type='MathMLContentElement'>
  3059. <descr><p>The <kw>MathMLContentElement</kw> being removed 
  3060. from the row.</p></descr></returns>
  3061. <raises>
  3062. <exception name='DOMException'>
  3063. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3064. than the number of entries in the row.</p></descr></exception>
  3065. </raises>
  3066. </method>
  3067. </interface>
  3068.  
  3069. <interface name='MathMLPiecewiseElement' inherits='MathMLContentElement' id='dom_PiecewiseElement'>
  3070. <descr><p>The <intref ref="contm_piecewise"><kw role="element">piecewise</kw></intref> element represents
  3071. the piecewise definition of a function. It contains child <intref ref="contm_piecewise"><kw role="element">piece</kw></intref> elements, each
  3072. represented by a <intref ref="dom_CaseElement"><kw>MathMLCaseElement</kw></intref>, giving the various conditions and
  3073. associated function value specifications in the function definition, and
  3074. an optional <intref ref="contm_piecewise"><kw role="element">otherwise</kw></intref> child element, represented by a
  3075. <kw>MathMLContentElement</kw>, giving the <quote>default</quote> value of the
  3076. function - that is, the value to be assigned when none of the conditions specified in
  3077. the <kw role="element">piece</kw> child elements hold.</p>
  3078. <?generate-idl?>
  3079. </descr>
  3080. <attribute name='pieces' type='MathMLNodeList' readonly='yes'>
  3081. <descr><p>A <intref ref="dom_NodeList"><kw>MathMLNodeList</kw></intref> containing one <kw>MathMLCaseElement</kw>
  3082. representing each of the <kw role="element">piece</kw> element children of this
  3083. <kw>MathMLPiecewiseElement</kw>. The <kw role="element">otherwise</kw>
  3084. child (if present) is not contained in this <kw>MathMLNodeList</kw>.</p></descr>
  3085. </attribute>
  3086. <attribute name='otherwise' type='MathMLContentElement' readonly='no'>
  3087. <descr><p>Returns a <kw>MathMLContentElement</kw> representing the value
  3088. to be taken by the piecewise function when none of the conditions described in the
  3089. <kw role="element">piece</kw> children is true.</p></descr>
  3090. </attribute>
  3091. <method name='getCase'>
  3092. <descr><p>A convenience method to retrieve the child <kw role="element">piece</kw>
  3093. at the position referenced by <kw>index</kw>.</p></descr>
  3094. <parameters>
  3095. <param name='index' type='unsigned long' attr='in'>
  3096. <descr><p>Position of desired case in the list of cases.
  3097. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3098. child (if present) is not counted, regardless of its position. If <kw>index</kw> is
  3099. greater than the number of <kw role="element">pieces</kw>, a null <kw>MathMLCaseElement</kw>
  3100. is returned; no error is generated.</p></descr>
  3101. </param>
  3102. </parameters>
  3103. <returns type='MathMLCaseElement'>
  3104. <descr><p>The <kw>MathMLCaseElement</kw> retrieved.</p></descr></returns>
  3105. <raises>
  3106. </raises>
  3107. </method>
  3108. <method name='setCase'>
  3109. <descr><p>A convenience method to set the value of the child <kw role="element">piece</kw>
  3110. at the position referenced by <kw>index</kw> to the value of <kw>case</kw>.</p></descr>
  3111. <parameters>
  3112. <param name='index' type='unsigned long' attr='in'>
  3113. <descr><p>Position of the <kw role="element">piece</kw> to be set
  3114. to <kw>case</kw>. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3115. child (if present) is not counted, regardless of its position. If there is currently
  3116. a <kw role="element">piece</kw> at this position, it will be replaced by <kw>case</kw>.
  3117. If <kw>index</kw> is one more than the number of <kw role="element">piece</kw> child elements,
  3118. a new one will be appended.</p></descr>
  3119. </param>
  3120. <param name='case' type='MathMLCaseElement' attr='in'>
  3121. <descr><p>A <kw>MathMLCaseElement</kw> representing the
  3122. new value of the <kw>index</kw>th <kw role="element">piece</kw> child.</p></descr>
  3123. </param>
  3124. </parameters>
  3125. <returns type='MathMLCaseElement'>
  3126. <descr><p>The new <kw>MathMLCaseElement</kw> created.</p></descr></returns>
  3127. <raises>
  3128. <exception name='DOMException'>
  3129. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  3130. one more than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3131. </raises>
  3132. </method>
  3133. <method name='deleteCase'>
  3134. <descr><p>A convenience method to delete the child <kw role="element">piece</kw>
  3135. at the position referenced by <kw>index</kw>. The deletion changes the indices of 
  3136. the following <kw role="element">pieces</kw>.</p></descr>
  3137. <parameters>
  3138. <param name='index' type='unsigned long' attr='in'>
  3139. <descr><p>Position of the piece to be deleted. The first 
  3140. piece is numbered 1; the <kw role="element">otherwise</kw> child (if present) 
  3141. is not counted, regardless of its position.</p></descr>
  3142. </param>
  3143. </parameters>
  3144. <returns type='void'>
  3145. <descr><p>None.</p></descr></returns>
  3146. <raises>
  3147. <exception name='DOMException'>
  3148. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  3149. the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3150. </raises>
  3151. </method>
  3152. <method name='removeCase'>
  3153. <descr><p>A convenience method to remove the child <kw role="element">piece</kw>
  3154. at the position referenced by <kw>index</kw> and return it to the caller. The removal
  3155. changes the indices of the following <kw role="element">pieces</kw>.</p></descr>
  3156. <parameters>
  3157. <param name='index' type='unsigned long' attr='in'>
  3158. <descr><p>Position of the piece to be removed. The first 
  3159. piece is numbered 1; the <kw role="element">otherwise</kw> child (if present)
  3160. is not counted, regardless of its position.</p></descr>
  3161. </param>
  3162. </parameters>
  3163. <returns type='MathMLCaseElement'>
  3164. <descr><p>The <kw>MathMLCaseElement</kw> removed.</p></descr></returns>
  3165. <raises>
  3166. <exception name='DOMException'>
  3167. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater than
  3168. the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3169. </raises>
  3170. </method>
  3171. <method name='insertCase'>
  3172. <descr><p>A convenience method to insert a new <kw role="element">piece</kw> child
  3173. into this element.</p></descr>
  3174. <parameters>
  3175. <param name='index' type='unsigned long' attr='in'>
  3176. <descr><p>Position before which <kw>case</kw> is to be inserted. If <kw>index</kw>
  3177. is 0, <kw>newCase</kw> is appended as the last <kw role="element">piece</kw> child of
  3178. this element. The <kw role="element">otherwise</kw> child (if present) is not counted,
  3179. regardless of its position.</p></descr>
  3180. </param>
  3181. <param name='newCase' type='MathMLCaseElement' attr='in'>
  3182. <descr><p>A <kw>MathMLCaseElement</kw> representing the
  3183. <kw role="element">piece</kw> to be inserted.</p></descr>
  3184. </param>
  3185. </parameters>
  3186. <returns type='MathMLCaseElement'>
  3187. <descr><p>The new <kw>MathMLCaseElement</kw> inserted. This is the
  3188. actual <kw>Element</kw> in the DOM.</p></descr></returns>
  3189. <raises>
  3190. <exception name='DOMException'>
  3191. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3192. one more than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3193. </raises>
  3194. </method>
  3195. <method name='getCaseValue'>
  3196. <descr><p>A convenience method to retrieve the child of the <kw>index</kw>th 
  3197. <kw role="element">piece</kw> in this element which specifies the function value for that case.</p></descr>
  3198. <parameters>
  3199. <param name='index' type='unsigned long' attr='in'>
  3200. <descr><p>Position of the <kw role="element">piece</kw> whose value is being
  3201. requested in the list of pieces. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3202. child (if present) is not counted, regardless of its position.</p></descr>
  3203. </param>
  3204. </parameters>
  3205. <returns type='MathMLContentElement'>
  3206. <descr><p>The <kw>MathMLContentElement</kw> representing the value
  3207. to be taken by the function in the <kw>index</kw>th case.</p></descr></returns>
  3208. <raises>
  3209. <exception name='DOMException'>
  3210. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3211. than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3212. </raises>
  3213. </method>
  3214. <method name='setCaseValue'>
  3215. <descr><p>A convenience method to set the function value for the <kw>index</kw>th 
  3216. <kw role="element">piece</kw> in this element.</p></descr>
  3217. <parameters>
  3218. <param name='index' type='unsigned long' attr='in'>
  3219. <descr><p>Position of the <kw role="element">piece</kw> whose value is being
  3220. set in the list of pieces. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3221. child (if present) is not counted, regardless of its position.</p></descr>
  3222. </param>
  3223. <param name='value' type='MathMLContentElement' attr='in'>
  3224. <descr><p>A <kw>MathMLContentElement</kw> representing the function
  3225. value to be assigned in the <kw>index</kw>th case.</p></descr>
  3226. </param>
  3227. </parameters>
  3228. <returns type='MathMLContentElement'>
  3229. <descr><p>The <kw>MathMLContentElement</kw> representing the value
  3230. to be taken by the function in the <kw>index</kw>th case.</p></descr></returns>
  3231. <raises>
  3232. <exception name='DOMException'>
  3233. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3234. than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3235. </raises>
  3236. </method>
  3237. <method name='getCaseCondition'>
  3238. <descr><p>A convenience method to retrieve the child of the <kw role="element">piece</kw>
  3239. at the position referenced by <kw>index</kw> which gives the condition for this case.</p></descr>
  3240. <parameters>
  3241. <param name='index' type='unsigned long' attr='in'>
  3242. <descr><p>Position of the <kw role="element">piece</kw> whose condition 
  3243. is being requested in the list of pieces. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3244. child (if present) is not counted, regardless of its position.</p></descr>
  3245. </param>
  3246. </parameters>
  3247. <returns type='MathMLContentElement'>
  3248. <descr><p>The <kw>MathMLContentElement</kw> representing the condition
  3249. to be satisfied for the <kw>index</kw>th case.</p></descr></returns>
  3250. <raises>
  3251. <exception name='DOMException'>
  3252. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3253. than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3254. </raises>
  3255. </method>
  3256. <method name='setCaseCondition'>
  3257. <descr><p>A convenience method to set the condition for the <kw>index</kw>th 
  3258. <kw role="element">piece</kw> in this element.</p></descr>
  3259. <parameters>
  3260. <param name='index' type='unsigned long' attr='in'>
  3261. <descr><p>Position of the <kw role="element">piece</kw> whose condition is being
  3262. set in the list of pieces. The first piece is numbered 1; the <kw role="element">otherwise</kw>
  3263. child (if present) is not counted, regardless of its position.</p></descr>
  3264. </param>
  3265. <param name='condition' type='MathMLContentElement' attr='in'>
  3266. <descr><p>A <kw>MathMLContentElement</kw> representing the condition
  3267. to be associated to the <kw>index</kw>th case.</p></descr>
  3268. </param>
  3269. </parameters>
  3270. <returns type='MathMLContentElement'>
  3271. <descr><p>The <kw>MathMLContentElement</kw> which is inserted as the
  3272. condition child of the <kw>index</kw>th <kw role="element">piece</kw>.</p></descr></returns>
  3273. <raises>
  3274. <exception name='DOMException'>
  3275. <descr><p>INDEX_SIZE_ERR: Raised if <kw>index</kw> is greater 
  3276. than the number of <kw role="element">pieces</kw> in this element.</p></descr></exception>
  3277. </raises>
  3278. </method>
  3279. </interface>
  3280.  
  3281. <interface name='MathMLCaseElement' inherits='MathMLContentElement' id='dom_CaseElement'>
  3282. <descr><p>The <intref ref="contm_piecewise"><kw role="element">piece</kw></intref> element represents
  3283. one of a sequence of cases used in the piecewise definition of a function. It contains two child
  3284. elements, each represented by a <kw>MathMLContentElement</kw>. The first child determines
  3285. the subset of the domain affected, normally by giving a condition to be satisfied. The second 
  3286. gives the value of the function over the indicated subset of its domain. </p>
  3287. <?generate-idl?>
  3288. </descr>
  3289. <attribute name='caseCondition' type='MathMLContentElement' readonly='no'>
  3290. <descr><p>Accesses the <kw>MathMLContentElement</kw> representing the condition
  3291. to be satisfied in order for this branch of the piecewise definition to be used.</p></descr>
  3292. </attribute>
  3293. <attribute name='caseValue' type='MathMLContentElement' readonly='no'>
  3294. <descr><p>Accesses the <kw>MathMLContentElement</kw> representing the value
  3295. to be taken by the piecewise function when the condition described by <kw>caseCondition</kw> is true.</p></descr>
  3296. </attribute>
  3297. </interface>
  3298.  
  3299. </definitions>
  3300. </div4>
  3301. </div3>
  3302. </div2>
  3303.  
  3304. <div2 id="dom_domTables"><head>MathML DOM Tables</head>
  3305. <div3 id="dom_inheritanceChart"><head>Chart of MathML DOM Inheritance</head>
  3306. <?generate-domInheritance?>
  3307. </div3>
  3308.  
  3309. <div3 id="dom_elementTable"><head>Table of Elements and MathML DOM Representations</head>
  3310.   <table border="1"><thead><tr><td rowspan="1" colspan="1">MathML Element</td><td rowspan="1" colspan="1">MathML DOM Interface</td></tr></thead><tbody><tr>
  3311.     <td rowspan="1" colspan="1"><intref ref="interf_toplevel">math</intref></td>
  3312.     <td rowspan="1" colspan="1"><intref ref="dom_MathElement">MathMLMathElement</intref></td></tr><tr>
  3313.     <td rowspan="1" colspan="1"><intref ref="presm_mi">mi</intref></td>
  3314.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationToken">MathMLPresentationToken</intref></td></tr><tr>
  3315.     <td rowspan="1" colspan="1"><intref ref="presm_mn">mn</intref></td>
  3316.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationToken">MathMLPresentationToken</intref></td></tr><tr>
  3317.     <td rowspan="1" colspan="1"><intref ref="presm_mo">mo</intref></td>
  3318.     <td rowspan="1" colspan="1"><intref ref="dom_OperatorElement">MathMLOperatorElement</intref></td></tr><tr>
  3319.     <td rowspan="1" colspan="1"><intref ref="presm_mtext">mtext</intref></td>
  3320.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationToken">MathMLPresentationToken</intref></td></tr><tr>
  3321.     <td rowspan="1" colspan="1"><intref ref="presm_mspace">mspace</intref></td>
  3322.     <td rowspan="1" colspan="1"><intref ref="dom_SpaceElement">MathMLSpaceElement</intref></td></tr><tr>
  3323.     <td rowspan="1" colspan="1"><intref ref="presm_ms">ms</intref></td>
  3324.     <td rowspan="1" colspan="1"><intref ref="dom_StringLitElement">MathMLStringLitElement</intref></td></tr><tr>
  3325.     <td rowspan="1" colspan="1"><intref ref="presm_mglyph">mglyph</intref></td>
  3326.     <td rowspan="1" colspan="1"><intref ref="dom_GlyphElement">MathMLGlyphElement</intref></td></tr><tr>
  3327.     <td rowspan="1" colspan="1"><intref ref="presm_mrow">mrow</intref></td>
  3328.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationContainer">MathMLPresentationContainer</intref></td></tr><tr>
  3329.     <td rowspan="1" colspan="1"><intref ref="presm_mfrac">mfrac</intref></td>
  3330.     <td rowspan="1" colspan="1"><intref ref="dom_FractionElement">MathMLFractionElement</intref></td></tr><tr>
  3331.     <td rowspan="1" colspan="1"><intref ref="presm_mroot">msqrt</intref></td>
  3332.     <td rowspan="1" colspan="1"><intref ref="dom_RadicalElement">MathMLRadicalElement</intref></td></tr><tr>
  3333.     <td rowspan="1" colspan="1"><intref ref="presm_mroot">mroot</intref></td>
  3334.     <td rowspan="1" colspan="1"><intref ref="dom_RadicalElement">MathMLRadicalElement</intref></td></tr><tr>
  3335.     <td rowspan="1" colspan="1"><intref ref="presm_mstyle">mstyle</intref></td>
  3336.     <td rowspan="1" colspan="1"><intref ref="dom_StyleElement">MathMLStyleElement</intref></td></tr><tr>
  3337.     <td rowspan="1" colspan="1"><intref ref="presm_merror">merror</intref></td>
  3338.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationContainer">MathMLPresentationContainer</intref></td></tr><tr>
  3339.     <td rowspan="1" colspan="1"><intref ref="presm_mpadded">mpadded</intref></td>
  3340.     <td rowspan="1" colspan="1"><intref ref="dom_PaddedElement">MathMLPaddedElement</intref></td></tr><tr>
  3341.     <td rowspan="1" colspan="1"><intref ref="presm_mphantom">mphantom</intref></td>
  3342.     <td rowspan="1" colspan="1"><intref ref="dom_PresentationContainer">MathMLPresentationContainer</intref></td></tr><tr>
  3343.     <td rowspan="1" colspan="1"><intref ref="presm_mfenced">mfenced</intref></td>
  3344.     <td rowspan="1" colspan="1"><intref ref="dom_FencedElement">MathMLFencedElement</intref></td></tr><tr>
  3345.     <td rowspan="1" colspan="1"><intref ref="presm_menclose">menclose</intref></td>
  3346.     <td rowspan="1" colspan="1"><intref ref="dom_EncloseElement">MathMLEncloseElement</intref></td></tr><tr>
  3347.     <td rowspan="1" colspan="1"><intref ref="presm_msub">msub</intref></td>
  3348.     <td rowspan="1" colspan="1"><intref ref="dom_ScriptElement">MathMLScriptElement</intref></td></tr><tr>
  3349.     <td rowspan="1" colspan="1"><intref ref="presm_msup">msup</intref></td>
  3350.     <td rowspan="1" colspan="1"><intref ref="dom_ScriptElement">MathMLScriptElement</intref></td></tr><tr>
  3351.     <td rowspan="1" colspan="1"><intref ref="presm_msubsup">msubsup</intref></td>
  3352.     <td rowspan="1" colspan="1"><intref ref="dom_ScriptElement">MathMLScriptElement</intref></td></tr><tr>
  3353.     <td rowspan="1" colspan="1"><intref ref="presm_munder">munder</intref></td>
  3354.     <td rowspan="1" colspan="1"><intref ref="dom_UnderOverElement">MathMLUnderOverElement</intref></td></tr><tr>
  3355.     <td rowspan="1" colspan="1"><intref ref="presm_mover">mover</intref></td>
  3356.     <td rowspan="1" colspan="1"><intref ref="dom_UnderOverElement">MathMLUnderOverElement</intref></td></tr><tr>
  3357.     <td rowspan="1" colspan="1"><intref ref="presm_munderover">munderover</intref></td>
  3358.     <td rowspan="1" colspan="1"><intref ref="dom_UnderOverElement">MathMLUnderOverElement</intref></td></tr><tr>
  3359.     <td rowspan="1" colspan="1"><intref ref="presm_mmultiscripts">mmultiscripts</intref></td>
  3360.     <td rowspan="1" colspan="1"><intref ref="dom_MultiScriptsElement">MathMLMultiScriptsElement</intref></td></tr><tr>
  3361.     <td rowspan="1" colspan="1"><intref ref="presm_mtable">mtable</intref></td>
  3362.     <td rowspan="1" colspan="1"><intref ref="dom_TableElement">MathMLTableElement</intref></td></tr><tr>
  3363.     <td rowspan="1" colspan="1"><intref ref="presm_mlabeledtr">mlabeledtr</intref></td>
  3364.     <td rowspan="1" colspan="1"><intref ref="dom_LabeledRowElement">MathMLLabeledRowElement</intref></td></tr><tr>
  3365.     <td rowspan="1" colspan="1"><intref ref="presm_mtr">mtr</intref></td>
  3366.     <td rowspan="1" colspan="1"><intref ref="dom_TableRowElement">MathMLTableRowElement</intref></td></tr><tr>
  3367.     <td rowspan="1" colspan="1"><intref ref="presm_mtd">mtd</intref></td>
  3368.     <td rowspan="1" colspan="1"><intref ref="dom_TableCellElement">MathMLTableCellElement</intref></td></tr><tr>
  3369.     <td rowspan="1" colspan="1"><intref ref="presm_malign">maligngroup</intref></td>
  3370.     <td rowspan="1" colspan="1"><intref ref="dom_AlignGroupElement">MathMLAlignGroupElement</intref></td></tr><tr>
  3371.     <td rowspan="1" colspan="1"><intref ref="presm_malign">malignmark</intref></td>
  3372.     <td rowspan="1" colspan="1"><intref ref="dom_AlignMarkElement">MathMLAlignMarkElement</intref></td></tr><tr>
  3373.     <td rowspan="1" colspan="1"><intref ref="presm_maction">maction</intref></td>
  3374.     <td rowspan="1" colspan="1"><intref ref="dom_ActionElement">MathMLActionElement</intref></td></tr><tr>
  3375.     <td rowspan="1" colspan="1"><intref ref="contm_cn">cn</intref></td>
  3376.     <td rowspan="1" colspan="1"><intref ref="dom_CnElement">MathMLCnElement</intref></td></tr><tr>
  3377.     <td rowspan="1" colspan="1"><intref ref="contm_ci">ci</intref></td>
  3378.     <td rowspan="1" colspan="1"><intref ref="dom_CiElement">MathMLCiElement</intref></td></tr><tr>
  3379.     <td rowspan="1" colspan="1"><intref ref="contm_csymbol">csymbol</intref></td>
  3380.     <td rowspan="1" colspan="1"><intref ref="dom_CsymbolElement">MathMLCsymbolElement</intref></td></tr><tr>
  3381.     <td rowspan="1" colspan="1"><intref ref="contm_apply">apply</intref></td>
  3382.     <td rowspan="1" colspan="1"><intref ref="dom_ApplyElement">MathMLApplyElement</intref></td></tr><tr>
  3383.     <td rowspan="1" colspan="1"><intref ref="contm_reln">reln</intref></td>
  3384.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3385.     <td rowspan="1" colspan="1"><intref ref="contm_fn">fn</intref></td>
  3386.     <td rowspan="1" colspan="1"><intref ref="dom_FnElement">MathMLFnElement</intref></td></tr><tr>
  3387.     <td rowspan="1" colspan="1"><intref ref="contm_interval">interval</intref></td>
  3388.     <td rowspan="1" colspan="1"><intref ref="dom_IntervalElement">MathMLIntervalElement</intref></td></tr><tr>
  3389.     <td rowspan="1" colspan="1"><intref ref="contm_inverse">inverse</intref></td>
  3390.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3391.     <td rowspan="1" colspan="1"><intref ref="contm_condition">condition</intref></td>
  3392.     <td rowspan="1" colspan="1"><intref ref="dom_ConditionElement">MathMLConditionElement</intref></td></tr><tr>
  3393.     <td rowspan="1" colspan="1"><intref ref="contm_declare">declare</intref></td>
  3394.     <td rowspan="1" colspan="1"><intref ref="dom_DeclareElement">MathMLDeclareElement</intref></td></tr><tr>
  3395.     <td rowspan="1" colspan="1"><intref ref="contm_lambda">lambda</intref></td>
  3396.     <td rowspan="1" colspan="1"><intref ref="dom_LambdaElement">MathMLLambdaElement</intref></td></tr><tr>
  3397.     <td rowspan="1" colspan="1"><intref ref="contm_compose">compose</intref></td>
  3398.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3399.     <td rowspan="1" colspan="1"><intref ref="contm_ident">ident</intref></td>
  3400.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3401.     <td rowspan="1" colspan="1"><intref ref="contm_domain">domain</intref></td>
  3402.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3403.     <td rowspan="1" colspan="1"><intref ref="contm_codomain">codomain</intref></td>
  3404.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3405.     <td rowspan="1" colspan="1"><intref ref="contm_image">image</intref></td>
  3406.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3407.     <td rowspan="1" colspan="1"><intref ref="contm_domainofapplication">domainofapplication</intref></td>
  3408.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3409.     <td rowspan="1" colspan="1"><intref ref="contm_piecewise">piecewise</intref></td>
  3410.     <td rowspan="1" colspan="1"><intref ref="dom_PiecewiseElement">MathMLPiecewiseElement</intref></td></tr><tr>
  3411.     <td rowspan="1" colspan="1"><intref ref="contm_piecewise">piece</intref></td>
  3412.     <td rowspan="1" colspan="1"><intref ref="dom_CaseElement">MathMLCaseElement</intref></td></tr><tr>
  3413.     <td rowspan="1" colspan="1"><intref ref="contm_piecewise">otherwise</intref></td>
  3414.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3415.     <td rowspan="1" colspan="1"><intref ref="contm_quotient">quotient</intref></td>
  3416.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3417.     <td rowspan="1" colspan="1"><intref ref="contm_exp">exp</intref></td>
  3418.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3419.     <td rowspan="1" colspan="1"><intref ref="contm_factorial">factorial</intref></td>
  3420.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3421.     <td rowspan="1" colspan="1"><intref ref="contm_divide">divide</intref></td>
  3422.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3423.     <td rowspan="1" colspan="1"><intref ref="contm_maxmin">max</intref></td>
  3424.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3425.     <td rowspan="1" colspan="1"><intref ref="contm_maxmin">min</intref></td>
  3426.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3427.     <td rowspan="1" colspan="1"><intref ref="contm_minus">minus</intref></td>
  3428.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3429.     <td rowspan="1" colspan="1"><intref ref="contm_plus">plus</intref></td>
  3430.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3431.     <td rowspan="1" colspan="1"><intref ref="contm_power">power</intref></td>
  3432.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3433.     <td rowspan="1" colspan="1"><intref ref="contm_rem">rem</intref></td>
  3434.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3435.     <td rowspan="1" colspan="1"><intref ref="contm_times">times</intref></td>
  3436.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3437.     <td rowspan="1" colspan="1"><intref ref="contm_root">root</intref></td>
  3438.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3439.     <td rowspan="1" colspan="1"><intref ref="contm_gcd">gcd</intref></td>
  3440.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3441.     <td rowspan="1" colspan="1"><intref ref="contm_and">and</intref></td>
  3442.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3443.     <td rowspan="1" colspan="1"><intref ref="contm_or">or</intref></td>
  3444.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3445.     <td rowspan="1" colspan="1"><intref ref="contm_xor">xor</intref></td>
  3446.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3447.     <td rowspan="1" colspan="1"><intref ref="contm_not">not</intref></td>
  3448.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3449.     <td rowspan="1" colspan="1"><intref ref="contm_implies">implies</intref></td>
  3450.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3451.     <td rowspan="1" colspan="1"><intref ref="contm_forall">forall</intref></td>
  3452.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3453.     <td rowspan="1" colspan="1"><intref ref="contm_exists">exists</intref></td>
  3454.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3455.     <td rowspan="1" colspan="1"><intref ref="contm_abs">abs</intref></td>
  3456.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3457.     <td rowspan="1" colspan="1"><intref ref="contm_conjugate">conjugate</intref></td>
  3458.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3459.     <td rowspan="1" colspan="1"><intref ref="contm_arg">arg</intref></td>
  3460.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3461.     <td rowspan="1" colspan="1"><intref ref="contm_real">real</intref></td>
  3462.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3463.     <td rowspan="1" colspan="1"><intref ref="contm_imaginary">imaginary</intref></td>
  3464.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3465.     <td rowspan="1" colspan="1"><intref ref="contm_lcm">lcm</intref></td>
  3466.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3467.     <td rowspan="1" colspan="1"><intref ref="contm_floor">floor</intref></td>
  3468.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3469.     <td rowspan="1" colspan="1"><intref ref="contm_ceiling">ceiling</intref></td>
  3470.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3471.     <td rowspan="1" colspan="1"><intref ref="contm_eq">eq</intref></td>
  3472.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3473.     <td rowspan="1" colspan="1"><intref ref="contm_neq">neq</intref></td>
  3474.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3475.     <td rowspan="1" colspan="1"><intref ref="contm_gt">gt</intref></td>
  3476.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3477.     <td rowspan="1" colspan="1"><intref ref="contm_lt">lt</intref></td>
  3478.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3479.     <td rowspan="1" colspan="1"><intref ref="contm_geq">geq</intref></td>
  3480.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3481.     <td rowspan="1" colspan="1"><intref ref="contm_leq">leq</intref></td>
  3482.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3483.     <td rowspan="1" colspan="1"><intref ref="contm_equivalent">equivalent</intref></td>
  3484.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3485.     <td rowspan="1" colspan="1"><intref ref="contm_approx">approx</intref></td>
  3486.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3487.     <td rowspan="1" colspan="1"><intref ref="contm_factorof">factorof</intref></td>
  3488.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3489.     <td rowspan="1" colspan="1"><intref ref="contm_int">int</intref></td>
  3490.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3491.     <td rowspan="1" colspan="1"><intref ref="contm_diff">diff</intref></td>
  3492.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3493.     <td rowspan="1" colspan="1"><intref ref="contm_partialdiff">partialdiff</intref></td>
  3494.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3495.     <td rowspan="1" colspan="1"><intref ref="contm_lowlimit">lowlimit</intref></td>
  3496.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3497.     <td rowspan="1" colspan="1"><intref ref="contm_uplimit">uplimit</intref></td>
  3498.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3499.     <td rowspan="1" colspan="1"><intref ref="contm_bvar">bvar</intref></td>
  3500.     <td rowspan="1" colspan="1"><intref ref="dom_BvarElement">MathMLBvarElement</intref></td></tr><tr>
  3501.     <td rowspan="1" colspan="1"><intref ref="contm_degree">degree</intref></td>
  3502.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3503.     <td rowspan="1" colspan="1"><intref ref="contm_divergence">divergence</intref></td>
  3504.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3505.     <td rowspan="1" colspan="1"><intref ref="contm_grad">grad</intref></td>
  3506.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3507.     <td rowspan="1" colspan="1"><intref ref="contm_curl">curl</intref></td>
  3508.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3509.     <td rowspan="1" colspan="1"><intref ref="contm_laplacian">laplacian</intref></td>
  3510.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3511.     <td rowspan="1" colspan="1"><intref ref="contm_set">set</intref></td>
  3512.     <td rowspan="1" colspan="1"><intref ref="dom_SetElement">MathMLSetElement</intref></td></tr><tr>
  3513.     <td rowspan="1" colspan="1"><intref ref="contm_list">list</intref></td>
  3514.     <td rowspan="1" colspan="1"><intref ref="dom_ListElement">MathMLListElement</intref></td></tr><tr>
  3515.     <td rowspan="1" colspan="1"><intref ref="contm_union">union</intref></td>
  3516.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3517.     <td rowspan="1" colspan="1"><intref ref="contm_intersect">intersect</intref></td>
  3518.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3519.     <td rowspan="1" colspan="1"><intref ref="contm_in">in</intref></td>
  3520.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3521.     <td rowspan="1" colspan="1"><intref ref="contm_notin">notin</intref></td>
  3522.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3523.     <td rowspan="1" colspan="1"><intref ref="contm_subset">subset</intref></td>
  3524.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3525.     <td rowspan="1" colspan="1"><intref ref="contm_prsubset">prsubset</intref></td>
  3526.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3527.     <td rowspan="1" colspan="1"><intref ref="contm_notsubset">notsubset</intref></td>
  3528.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3529.     <td rowspan="1" colspan="1"><intref ref="contm_notprsubset">notprsubset</intref></td>
  3530.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3531.     <td rowspan="1" colspan="1"><intref ref="contm_setdiff">setdiff</intref></td>
  3532.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3533.     <td rowspan="1" colspan="1"><intref ref="contm_card">card</intref></td>
  3534.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3535.     <td rowspan="1" colspan="1"><intref ref="contm_cartesianproduct">cartesianproduct</intref></td>
  3536.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3537.     <td rowspan="1" colspan="1"><intref ref="contm_sum">sum</intref></td>
  3538.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3539.     <td rowspan="1" colspan="1"><intref ref="contm_product">product</intref></td>
  3540.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3541.     <td rowspan="1" colspan="1"><intref ref="contm_limit">limit</intref></td>
  3542.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3543.     <td rowspan="1" colspan="1"><intref ref="contm_tendsto">tendsto</intref></td>
  3544.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3545.     <td rowspan="1" colspan="1"><intref ref="contm_exp">exp</intref></td>
  3546.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3547.     <td rowspan="1" colspan="1"><intref ref="contm_ln">ln</intref></td>
  3548.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3549.     <td rowspan="1" colspan="1"><intref ref="contm_log">log</intref></td>
  3550.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3551.     <td rowspan="1" colspan="1"><intref ref="contm_trig">sin</intref></td>
  3552.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3553.     <td rowspan="1" colspan="1"><intref ref="contm_trig">cos</intref></td>
  3554.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3555.     <td rowspan="1" colspan="1"><intref ref="contm_trig">tan</intref></td>
  3556.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3557.     <td rowspan="1" colspan="1"><intref ref="contm_trig">sec</intref></td>
  3558.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3559.     <td rowspan="1" colspan="1"><intref ref="contm_trig">csc</intref></td>
  3560.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3561.     <td rowspan="1" colspan="1"><intref ref="contm_trig">cot</intref></td>
  3562.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3563.     <td rowspan="1" colspan="1"><intref ref="contm_trig">sinh</intref></td>
  3564.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3565.     <td rowspan="1" colspan="1"><intref ref="contm_trig">cosh</intref></td>
  3566.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3567.     <td rowspan="1" colspan="1"><intref ref="contm_trig">tanh</intref></td>
  3568.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3569.     <td rowspan="1" colspan="1"><intref ref="contm_trig">sech</intref></td>
  3570.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3571.     <td rowspan="1" colspan="1"><intref ref="contm_trig">csch</intref></td>
  3572.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3573.     <td rowspan="1" colspan="1"><intref ref="contm_trig">coth</intref></td>
  3574.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3575.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arcsin</intref></td>
  3576.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3577.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccos</intref></td>
  3578.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3579.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arctan</intref></td>
  3580.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3581.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccosh</intref></td>
  3582.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3583.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccot</intref></td>
  3584.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3585.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccoth</intref></td>
  3586.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3587.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccsc</intref></td>
  3588.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3589.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arccsch</intref></td>
  3590.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3591.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arcsec</intref></td>
  3592.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3593.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arcsech</intref></td>
  3594.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3595.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arcsinh</intref></td>
  3596.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3597.     <td rowspan="1" colspan="1"><intref ref="contm_trig">arctanh</intref></td>
  3598.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3599.     <td rowspan="1" colspan="1"><intref ref="contm_mean">mean</intref></td>
  3600.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3601.     <td rowspan="1" colspan="1"><intref ref="contm_sdev">sdev</intref></td>
  3602.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3603.     <td rowspan="1" colspan="1"><intref ref="contm_variance">variance</intref></td>
  3604.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3605.     <td rowspan="1" colspan="1"><intref ref="contm_median">median</intref></td>
  3606.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3607.     <td rowspan="1" colspan="1"><intref ref="contm_mode">mode</intref></td>
  3608.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3609.     <td rowspan="1" colspan="1"><intref ref="contm_moment">moment</intref></td>
  3610.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3611.     <td rowspan="1" colspan="1"><intref ref="contm_momentabout">momentabout</intref></td>
  3612.     <td rowspan="1" colspan="1"><intref ref="dom_ContentContainer">MathMLContentContainer</intref></td></tr><tr>
  3613.     <td rowspan="1" colspan="1"><intref ref="contm_vector">vector</intref></td>
  3614.     <td rowspan="1" colspan="1"><intref ref="dom_VectorElement">MathMLVectorElement</intref></td></tr><tr>
  3615.     <td rowspan="1" colspan="1"><intref ref="contm_matrix">matrix</intref></td>
  3616.     <td rowspan="1" colspan="1"><intref ref="dom_MatrixElement">MathMLMatrixElement</intref></td></tr><tr>
  3617.     <td rowspan="1" colspan="1"><intref ref="contm_matrixrow">matrixrow</intref></td>
  3618.     <td rowspan="1" colspan="1"><intref ref="dom_MatrixrowElement">MathMLMatrixRowElement</intref></td></tr><tr>
  3619.     <td rowspan="1" colspan="1"><intref ref="contm_determinant">determinant</intref></td>
  3620.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3621.     <td rowspan="1" colspan="1"><intref ref="contm_transpose">transpose</intref></td>
  3622.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3623.     <td rowspan="1" colspan="1"><intref ref="contm_selector">selector</intref></td>
  3624.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3625.     <td rowspan="1" colspan="1"><intref ref="contm_vectorproduct">vectorproduct</intref></td>
  3626.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3627.     <td rowspan="1" colspan="1"><intref ref="contm_scalarproduct">scalarproduct</intref></td>
  3628.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3629.     <td rowspan="1" colspan="1"><intref ref="contm_outerproduct">outerproduct</intref></td>
  3630.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3631.     <td rowspan="1" colspan="1"><intref ref="contm_annotation">annotation</intref></td>
  3632.     <td rowspan="1" colspan="1"><intref ref="dom_AnnotationElement">MathMLAnnotationElement</intref></td></tr><tr>
  3633.     <td rowspan="1" colspan="1"><intref ref="contm_semantics">semantics</intref></td>
  3634.     <td rowspan="1" colspan="1"><intref ref="dom_SemanticsElement">MathMLSemanticsElement</intref></td></tr><tr>
  3635.     <td rowspan="1" colspan="1"><intref ref="contm_annotation-xml">annotation-xml</intref></td>
  3636.     <td rowspan="1" colspan="1"><intref ref="dom_XMLAnnotationElement">MathMLXMLAnnotationElement</intref></td></tr><tr>
  3637.     <td rowspan="1" colspan="1"><intref ref="contm_integers">integers</intref></td>
  3638.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3639.     <td rowspan="1" colspan="1"><intref ref="contm_reals">reals</intref></td>
  3640.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3641.     <td rowspan="1" colspan="1"><intref ref="contm_rationals">rationals</intref></td>
  3642.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3643.     <td rowspan="1" colspan="1"><intref ref="contm_naturalnumbers">naturalnumbers</intref></td>
  3644.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3645.     <td rowspan="1" colspan="1"><intref ref="contm_complexes">complexes</intref></td>
  3646.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3647.     <td rowspan="1" colspan="1"><intref ref="contm_primes">primes</intref></td>
  3648.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3649.     <td rowspan="1" colspan="1"><intref ref="contm_exponentiale">exponentiale</intref></td>
  3650.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3651.     <td rowspan="1" colspan="1"><intref ref="contm_imaginaryi">imaginaryi</intref></td>
  3652.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3653.     <td rowspan="1" colspan="1"><intref ref="contm_notanumber">notanumber</intref></td>
  3654.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3655.     <td rowspan="1" colspan="1"><intref ref="contm_true">true</intref></td>
  3656.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3657.     <td rowspan="1" colspan="1"><intref ref="contm_false">false</intref></td>
  3658.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3659.     <td rowspan="1" colspan="1"><intref ref="contm_emptyset">emptyset</intref></td>
  3660.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3661.     <td rowspan="1" colspan="1"><intref ref="contm_pi">pi</intref></td>
  3662.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3663.     <td rowspan="1" colspan="1"><intref ref="contm_eulergamma">eulergamma</intref></td>
  3664.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr><tr>
  3665.     <td rowspan="1" colspan="1"><intref ref="contm_infinity">infinity</intref></td>
  3666.     <td rowspan="1" colspan="1"><intref ref="dom_PredefinedSymbol">MathMLPredefinedSymbol</intref></td></tr></tbody></table>
  3667. </div3>
  3668. </div2>
  3669. </div1>
  3670.