001    /*
002     * Copyright 2007 - 2007 JEuclid, http://jeuclid.sf.net
003     * 
004     * Licensed under the Apache License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     *
008     *      http://www.apache.org/licenses/LICENSE-2.0
009     *
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    package org.w3c.dom.mathml;
017    
018    import org.w3c.dom.DOMException;
019    
020    /*
021     * Please note: This file was automatically generated from the source of the
022     * MathML specification. Do not edit it. If there are errors or missing
023     * elements, please correct the stylesheet instead.
024     */
025    
026    /**
027     * This interface extends the MathMLPresentationElement interface for the
028     * MathML underscript, overscript and overscript-underscript pair elements
029     * munder, mover and munderover.
030     * 
031     * 
032     */
033    public interface MathMLUnderOverElement extends MathMLPresentationElement {
034        /**
035         * Either true or false if present; a string controlling whether
036         * underscript is drawn as an accent or as a limit, if specified; this is
037         * the element's accentunder attribute. This must return null for an
038         * mover.
039         * 
040         * @return value of the accentunder attribute.
041         */
042        String getAccentunder();
043    
044        /**
045         * setter for the accentunder attribute.
046         * 
047         * @param accentunder
048         *            new value for accentunder.
049         * @see #getAccentunder()
050         */
051        void setAccentunder(String accentunder);
052    
053        /**
054         * Either true or false if present; a string controlling whether
055         * overscript is drawn as an accent or as a limit, if specified; this is
056         * the element's accent attribute. This must return null for an munder.
057         * 
058         * @return value of the accent attribute.
059         */
060        String getAccent();
061    
062        /**
063         * setter for the accent attribute.
064         * 
065         * @param accent
066         *            new value for accent.
067         * @see #getAccent()
068         */
069        void setAccent(String accent);
070    
071        /**
072         * A MathMLElement representing the base of the script. This is the first
073         * child of the element.
074         * 
075         * @return value of the base attribute.
076         */
077        MathMLElement getBase();
078    
079        /**
080         * setter for the base attribute.
081         * 
082         * @param base
083         *            new value for base.
084         * @see #getBase()
085         */
086        void setBase(MathMLElement base);
087    
088        /**
089         * A MathMLElement representing the underscript of the script. This is the
090         * second child of a munder or munderover; retrieval must return null for
091         * an mover.
092         * 
093         * @return value of the underscript attribute.
094         */
095        MathMLElement getUnderscript();
096    
097        /**
098         * setter for the underscript attribute.
099         * 
100         * @param underscript
101         *            new value for underscript.
102         * @see #getUnderscript()
103         * @throws DOMException
104         *             HIERARCHY_REQUEST_ERR: Raised when the element is a mover.
105         */
106        void setUnderscript(MathMLElement underscript);
107    
108        /**
109         * A MathMLElement representing the overscript of the script. This is the
110         * second child of a mover or the third child of a munderover; retrieval
111         * must return null for an munder.
112         * 
113         * @return value of the overscript attribute.
114         */
115        MathMLElement getOverscript();
116    
117        /**
118         * setter for the overscript attribute.
119         * 
120         * @param overscript
121         *            new value for overscript.
122         * @see #getOverscript()
123         * @throws DOMException
124         *             HIERARCHY_REQUEST_ERR: Raised when the element is a munder.
125         */
126        void setOverscript(MathMLElement overscript);
127    };