1 /* 2 * Copyright 2007 - 2007 JEuclid, http://jeuclid.sf.net 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 package org.w3c.dom.mathml; 17 18 import org.w3c.dom.DOMException; 19 20 /* 21 * Please note: This file was automatically generated from the source of the 22 * MathML specification. Do not edit it. If there are errors or missing 23 * elements, please correct the stylesheet instead. 24 */ 25 26 /** 27 * The piecewise element represents the piecewise definition of a function. It 28 * contains child piece elements, each represented by a MathMLCaseElement, 29 * giving the various conditions and associated function value specifications 30 * in the function definition, and an optional otherwise child element, 31 * represented by a MathMLContentElement, giving the default value of the 32 * function - that is, the value to be assigned when none of the conditions 33 * specified in the piece child elements hold. 34 * 35 */ 36 public interface MathMLPiecewiseElement extends MathMLContentElement { 37 /** 38 * A MathMLNodeList containing one MathMLCaseElement representing each of 39 * the piece element children of this MathMLPiecewiseElement. The 40 * otherwise child (if present) is not contained in this MathMLNodeList. 41 * 42 * @return value of the pieces attribute. 43 */ 44 MathMLNodeList getPieces(); 45 46 /** 47 * Returns a MathMLContentElement representing the value to be taken by 48 * the piecewise function when none of the conditions described in the 49 * piece children is true. 50 * 51 * @return value of the otherwise attribute. 52 */ 53 MathMLContentElement getOtherwise(); 54 55 /** 56 * setter for the otherwise attribute. 57 * 58 * @param otherwise 59 * new value for otherwise. 60 * @see #getOtherwise() 61 */ 62 void setOtherwise(MathMLContentElement otherwise); 63 64 /** 65 * A convenience method to retrieve the child piece at the position 66 * referenced by index. 67 * 68 * @param index 69 * Position of desired case in the list of cases. The first 70 * piece is numbered 1; the otherwise child (if present) is not 71 * counted, regardless of its position. If index is greater 72 * than the number of pieces, a null MathMLCaseElement is 73 * returned; no error is generated. 74 * @return The MathMLCaseElement retrieved. 75 */ 76 MathMLCaseElement getCase(int index); 77 78 /** 79 * A convenience method to set the value of the child piece at the 80 * position referenced by index to the value of case. 81 * 82 * @param index 83 * Position of the piece to be set to case. The first piece is 84 * numbered 1; the otherwise child (if present) is not counted, 85 * regardless of its position. If there is currently a piece at 86 * this position, it will be replaced by case. If index is one 87 * more than the number of piece child elements, a new one will 88 * be appended. 89 * @param case 90 * A MathMLCaseElement representing the new value of the 91 * indexth piece child. 92 * @return The new MathMLCaseElement created. 93 * @throws DOMException 94 * INDEX_SIZE_ERR: Raised if index is greater than one more 95 * than the number of pieces in this element. 96 */ 97 MathMLCaseElement setCase(int index, MathMLCaseElement caseElement) 98 throws DOMException; 99 100 /** 101 * A convenience method to delete the child piece at the position 102 * referenced by index. The deletion changes the indices of the following 103 * pieces. 104 * 105 * @param index 106 * Position of the piece to be deleted. The first piece is 107 * numbered 1; the otherwise child (if present) is not counted, 108 * regardless of its position. 109 * @throws DOMException 110 * INDEX_SIZE_ERR: Raised if index is greater than the number 111 * of pieces in this element. 112 */ 113 void deleteCase(int index) throws DOMException; 114 115 /** 116 * A convenience method to remove the child piece at the position 117 * referenced by index and return it to the caller. The removal changes 118 * the indices of the following pieces. 119 * 120 * @param index 121 * Position of the piece to be removed. The first piece is 122 * numbered 1; the otherwise child (if present) is not counted, 123 * regardless of its position. 124 * @return The MathMLCaseElement removed. 125 * @throws DOMException 126 * INDEX_SIZE_ERR: Raised if index is greater than the number 127 * of pieces in this element. 128 */ 129 MathMLCaseElement removeCase(int index) throws DOMException; 130 131 /** 132 * A convenience method to insert a new piece child into this element. 133 * 134 * @param index 135 * Position before which case is to be inserted. If index is 0, 136 * newCase is appended as the last piece child of this element. 137 * The otherwise child (if present) is not counted, regardless 138 * of its position. 139 * @param newCase 140 * A MathMLCaseElement representing the piece to be inserted. 141 * @return The new MathMLCaseElement inserted. This is the actual Element 142 * in the DOM. 143 * @throws DOMException 144 * INDEX_SIZE_ERR: Raised if index is greater one more than 145 * the number of pieces in this element. 146 */ 147 MathMLCaseElement insertCase(int index, MathMLCaseElement newCase) 148 throws DOMException; 149 150 /** 151 * A convenience method to retrieve the child of the indexth piece in this 152 * element which specifies the function value for that case. 153 * 154 * @param index 155 * Position of the piece whose value is being requested in the 156 * list of pieces. The first piece is numbered 1; the otherwise 157 * child (if present) is not counted, regardless of its 158 * position. 159 * @return The MathMLContentElement representing the value to be taken by 160 * the function in the indexth case. 161 * @throws DOMException 162 * INDEX_SIZE_ERR: Raised if index is greater than the number 163 * of pieces in this element. 164 */ 165 MathMLContentElement getCaseValue(int index) throws DOMException; 166 167 /** 168 * A convenience method to set the function value for the indexth piece in 169 * this element. 170 * 171 * @param index 172 * Position of the piece whose value is being set in the list 173 * of pieces. The first piece is numbered 1; the otherwise 174 * child (if present) is not counted, regardless of its 175 * position. 176 * @param value 177 * A MathMLContentElement representing the function value to be 178 * assigned in the indexth case. 179 * @return The MathMLContentElement representing the value to be taken by 180 * the function in the indexth case. 181 * @throws DOMException 182 * INDEX_SIZE_ERR: Raised if index is greater than the number 183 * of pieces in this element. 184 */ 185 MathMLContentElement setCaseValue(int index, MathMLContentElement value) 186 throws DOMException; 187 188 /** 189 * A convenience method to retrieve the child of the piece at the position 190 * referenced by index which gives the condition for this case. 191 * 192 * @param index 193 * Position of the piece whose condition is being requested in 194 * the list of pieces. The first piece is numbered 1; the 195 * otherwise child (if present) is not counted, regardless of 196 * its position. 197 * @return The MathMLContentElement representing the condition to be 198 * satisfied for the indexth case. 199 * @throws DOMException 200 * INDEX_SIZE_ERR: Raised if index is greater than the number 201 * of pieces in this element. 202 */ 203 MathMLContentElement getCaseCondition(int index) throws DOMException; 204 205 /** 206 * A convenience method to set the condition for the indexth piece in this 207 * element. 208 * 209 * @param index 210 * Position of the piece whose condition is being set in the 211 * list of pieces. The first piece is numbered 1; the otherwise 212 * child (if present) is not counted, regardless of its 213 * position. 214 * @param condition 215 * A MathMLContentElement representing the condition to be 216 * associated to the indexth case. 217 * @return The MathMLContentElement which is inserted as the condition 218 * child of the indexth piece. 219 * @throws DOMException 220 * INDEX_SIZE_ERR: Raised if index is greater than the number 221 * of pieces in this element. 222 */ 223 MathMLContentElement setCaseCondition(int index, 224 MathMLContentElement condition) throws DOMException; 225 };