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 /*
019 * Please note: This file was automatically generated from the source of the
020 * MathML specification. Do not edit it. If there are errors or missing
021 * elements, please correct the stylesheet instead.
022 */
023
024 /**
025 * The declare construct has two primary roles. The first is to change or set
026 * the default attribute values for a specific mathematical object. The second
027 * is to establish an association between a name and an object.
028 *
029 *
030 */
031 public interface MathMLDeclareElement extends MathMLContentElement {
032 /**
033 * A string indicating the type of the identifier. It must be compatible
034 * with the type of the constructor, if a constructor is present. The type
035 * is inferred from the constructor if present, otherwise it must be
036 * specified.
037 *
038 * @return value of the type attribute.
039 */
040 String getType();
041
042 /**
043 * setter for the type attribute.
044 *
045 * @param type
046 * new value for type.
047 * @see #getType()
048 */
049 void setType(String type);
050
051 /**
052 * If the identifier is a function, this attribute specifies the number of
053 * arguments the function takes. This represents the declare element's
054 * nargs attribute; see .
055 *
056 * @return value of the nargs attribute.
057 */
058 int getNargs();
059
060 /**
061 * setter for the nargs attribute.
062 *
063 * @param nargs
064 * new value for nargs.
065 * @see #getNargs()
066 */
067 void setNargs(int nargs);
068
069 /**
070 * A string with the values prefix, infix, postfix, or function-model.
071 *
072 * @return value of the occurrence attribute.
073 */
074 String getOccurrence();
075
076 /**
077 * setter for the occurrence attribute.
078 *
079 * @param occurrence
080 * new value for occurrence.
081 * @see #getOccurrence()
082 */
083 void setOccurrence(String occurrence);
084
085 /**
086 * A URI specifying the detailed semantics of the element.
087 *
088 * @return value of the definitionURL attribute.
089 */
090 String getDefinitionURL();
091
092 /**
093 * setter for the definitionURL attribute.
094 *
095 * @param definitionURL
096 * new value for definitionURL.
097 * @see #getDefinitionURL()
098 */
099 void setDefinitionURL(String definitionURL);
100
101 /**
102 * A description of the syntax used in definitionURL.
103 *
104 * @return value of the encoding attribute.
105 */
106 String getEncoding();
107
108 /**
109 * setter for the encoding attribute.
110 *
111 * @param encoding
112 * new value for encoding.
113 * @see #getEncoding()
114 */
115 void setEncoding(String encoding);
116
117 /**
118 * A MathMLCiElement representing the name being declared.
119 *
120 * @return value of the identifier attribute.
121 */
122 MathMLCiElement getIdentifier();
123
124 /**
125 * setter for the identifier attribute.
126 *
127 * @param identifier
128 * new value for identifier.
129 * @see #getIdentifier()
130 */
131 void setIdentifier(MathMLCiElement identifier);
132
133 /**
134 * An optional MathMLElement providing an initial value for the object
135 * being declared.
136 *
137 * @return value of the constructor attribute.
138 */
139 MathMLElement getConstructor();
140
141 /**
142 * setter for the constructor attribute.
143 *
144 * @param constructor
145 * new value for constructor.
146 * @see #getConstructor()
147 */
148 void setConstructor(MathMLElement constructor);
149 };