rebuilding head
[mir.git] / lib / struts / tiles-config_1_1.dtd
1 <!--\r
2      DTD for the Tile Definition File, Version 1.1\r
3 \r
4      To support validation of your configuration file, include the following\r
5      DOCTYPE element at the beginning (after the "xml" declaration):\r
6 \r
7      <!DOCTYPE tiles-definitions PUBLIC\r
8        "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"\r
9        "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">\r
10 \r
11      $Id: tiles-config_1_1.dtd,v 1.6 2003/05/03 16:19:56 jholmes Exp $\r
12 -->\r
13 \r
14 \r
15 <!-- ========== Defined Types ============================================= -->\r
16 \r
17 \r
18 <!-- A "Boolean" is the string representation of a boolean (true or false)\r
19      variable.\r
20 -->\r
21 <!ENTITY % Boolean "(true|false)">\r
22 \r
23 \r
24 <!-- A "ContentType" is the content type of an attribute passed to a tile\r
25      component.\r
26 -->\r
27 <!ENTITY % ContentType "(string|page|template|definition)">\r
28 \r
29 <!-- A "ClassName" is the fully qualified name of a Java class that is\r
30      instantiated to provide the functionality of the enclosing element.\r
31 -->\r
32 <!ENTITY % ClassName "CDATA">\r
33 \r
34 <!-- A "RequestPath" is an application-relative URI path, beginning with a\r
35      slash, that identifies a mapped resource (such as a JSP page or a servlet)\r
36      within this web application.\r
37 -->\r
38 <!ENTITY % RequestPath "CDATA">\r
39 \r
40 <!-- A "DefinitionName" is the unique identifier of a definition. This identifier\r
41      is a logical name used to reference the definition.\r
42 -->\r
43 <!ENTITY % DefinitionName "CDATA">\r
44 \r
45 <!-- A "BeanName" is the identifier of a JavaBean, such as a form bean,\r
46      and also serves as the name of the corresponding scripting variable\r
47      and the name of the JSP attribute under which the bean is accessed.\r
48      Therefore, it must conform to the rules for a Java identifier.\r
49 -->\r
50 <!ENTITY % BeanName "CDATA">\r
51 \r
52 <!-- A "PropName" is the name of a JavaBeans property, and must begin with\r
53      a lower case letter and contain only characters that are legal in a\r
54      Java identifier.\r
55 -->\r
56 <!ENTITY % PropName "CDATA">\r
57 \r
58 <!-- A "Location" is a relative path, delimited by "/" characters, that\r
59      defines the location of a resource relative to the location of the\r
60      configuration file itself.\r
61 -->\r
62 <!ENTITY % Location "#PCDATA">\r
63 \r
64 \r
65 \r
66 <!-- ========== Top Level Elements ======================================== -->\r
67 \r
68 \r
69   <!-- deprecated: use tiles-definitions instead.-->\r
70 <!ELEMENT component-definitions (definition+)>\r
71 \r
72 <!-- The "tiles-definitions" element is the root of the configuration file\r
73      hierarchy, and contains nested elements for all of the other\r
74      configuration settings.\r
75 -->\r
76 <!ELEMENT tiles-definitions (definition+)>\r
77 \r
78 <!-- The "definition" element describes a definition that can be inserted in a jsp\r
79      page. This definition is identified by its logical name. A definition allows\r
80      to define all the attributes that can be set in <insert> tag from a jsp page.\r
81 \r
82      controllerClass The fully qualified Java class name of the controller\r
83                      subclass to call immediately before the tiles is inserted.\r
84                      Only one of controllerClass or controllerUrl should be\r
85                      specified.\r
86 \r
87      controllerUrl   The context-relative path to the resource used as controller\r
88                      called immediately before the tiles is inserted.\r
89                      Only one of controllerClass or controllerUrl should be\r
90                      specified.\r
91 \r
92      extends         Name of a definition that is used as ancestor of this definition.\r
93                      All attributes from the ancestor are available to the new\r
94                      definition. Any attribute inherited from the ancestor can\r
95                      be overloaded by providing a new value.\r
96 \r
97      name            The unique identifier for this definition.\r
98 \r
99      page            Same as path.\r
100 \r
101      path            The context-relative path to the resource used as tiles to\r
102                      insert. This tiles will be inserted and a tiles context\r
103                      containing appropriate attributes will be available.\r
104 \r
105      role            Security role name that is allowed access to this definition\r
106                      object. The definition is inserted only if the role name is\r
107                      allowed.\r
108 \r
109      template        Same as path. For compatibility with the template tag library.\r
110 -->\r
111 <!ELEMENT definition (icon?, display-name?, description?, put*, putList*)>\r
112 <!ATTLIST definition       id               ID               #IMPLIED>\r
113 <!ATTLIST definition       controllerClass  %ClassName;      #IMPLIED>\r
114 <!ATTLIST definition       controllerUrl    %RequestPath;    #IMPLIED>\r
115 <!ATTLIST definition       extends          %DefinitionName; #IMPLIED>\r
116 <!ATTLIST definition       name             %DefinitionName; #REQUIRED>\r
117 <!ATTLIST definition       page             %RequestPath;    #IMPLIED>\r
118 <!ATTLIST definition       path             %RequestPath;    #IMPLIED>\r
119 <!ATTLIST definition       role             CDATA            #IMPLIED>\r
120 <!ATTLIST definition       template         %RequestPath;    #IMPLIED>\r
121 \r
122 \r
123 <!-- The "put" element describes an attribute of a definition. It allows to\r
124      specify the tiles attribute name and its value. The tiles value can be\r
125      specified as an xml attribute, or in the body of the <put> tag.\r
126 \r
127      content         Same as value. For compatibility with the template tag library.\r
128 \r
129      direct          Same as type="string". For compatibility with the template\r
130                      tag library.\r
131 \r
132      name            The unique identifier for this put.\r
133 \r
134      type            The type of the value. Can be: string, page, template or definition.\r
135                      By default, no type is associated to a value. If a type is\r
136                      associated, it will be used as a hint to process the value\r
137                      when the attribute will be used in the inserted tiles.\r
138 \r
139      value           The value associated to this tiles attribute. The value should\r
140                      be specified with this tag attribute, or in the body of the tag.\r
141 -->\r
142 <!ELEMENT put (#PCDATA)>\r
143 <!ATTLIST put              id               ID              #IMPLIED>\r
144 <!ATTLIST put              content          CDATA           #IMPLIED>\r
145 <!ATTLIST put              direct           %Boolean;       #IMPLIED>\r
146 <!ATTLIST put              name             CDATA           #REQUIRED>\r
147 <!ATTLIST put              type             %ContentType;   #IMPLIED>\r
148 <!ATTLIST put              value            CDATA           #IMPLIED>\r
149 \r
150 \r
151 <!-- The "putList" element describes a list attribute of a definition. It allows to\r
152      specify an attribute that is a java List containing any kind of values. In\r
153      the config file, the list elements are specified by nested <add>, <item> or\r
154      <putList>.\r
155 \r
156      name            The unique identifier for this put list.\r
157 -->\r
158 <!ELEMENT putList ( (add* | item* | bean* | putList*)+) >\r
159 <!ATTLIST putList          id               ID              #IMPLIED>\r
160 <!ATTLIST putList          name             CDATA           #REQUIRED>\r
161 \r
162 <!-- ========== Subordinate Elements ====================================== -->\r
163 \r
164 <!-- The "add" element describes an element of a list. It is similar to the\r
165      <put> element.\r
166 \r
167      content         Same as value. For compatibility with the template tag library.\r
168 \r
169      direct          Same as type="string". For compatibility with the template\r
170                      tag library.\r
171 \r
172      type            The type of the value. Can be: string, page, template or definition.\r
173                      By default, no type is associated to a value. If a type is\r
174                      associated, it will be used as a hint to process the value\r
175                      when the attribute will be used in the inserted tiles.\r
176 \r
177      value           The value associated to this tiles attribute. The value should\r
178                      be specified with this tag attribute, or in the body of the tag.\r
179 -->\r
180 <!ELEMENT add (#PCDATA)>\r
181 <!ATTLIST add              id               ID              #IMPLIED>\r
182 <!ATTLIST add              content          CDATA           #IMPLIED>\r
183 <!ATTLIST add              direct           %Boolean;       #IMPLIED>\r
184 <!ATTLIST add              type             %ContentType;   #IMPLIED>\r
185 <!ATTLIST add              value            CDATA           #IMPLIED>\r
186 \r
187 \r
188 <!-- The "bean" element describes an element of a list. It create a bean of the\r
189      specified java classtype. This bean is initialized with appropriate nested\r
190      <set-property>.\r
191 \r
192      classtype       The fully qualified classname for this bean.\r
193 -->\r
194 <!ELEMENT bean (set-property*)>\r
195 <!ATTLIST bean             id               ID              #IMPLIED>\r
196 <!ATTLIST bean             classtype        %ClassName;     #REQUIRED>\r
197 \r
198 <!-- The "set-property" element specifies the method name and initial value of\r
199      a bean property. When the object representing\r
200      the surrounding element is instantiated, the accessor for the indicated\r
201      property is called and passed the indicated value.\r
202 \r
203      property        Name of the JavaBeans property whose setter method\r
204                      will be called.\r
205 \r
206      value           String representation of the value to which this\r
207                      property will be set, after suitable type conversion\r
208 -->\r
209 <!ELEMENT set-property   EMPTY>\r
210 <!ATTLIST set-property   id             ID              #IMPLIED>\r
211 <!ATTLIST set-property   property       %PropName;      #REQUIRED>\r
212 <!ATTLIST set-property   value          CDATA           #REQUIRED>\r
213 \r
214 \r
215 <!-- The "item" element describes an element of a list. It create a bean added as\r
216      element to the list. Each bean can contain different properties: value, link,\r
217      icon, tooltip. These properties are to be interpreted by the jsp page using\r
218      them.\r
219      By default the bean is of type\r
220      "org.apache.struts.tiles.beans.SimpleMenuItem". This bean is useful to\r
221      create a list of beans used as menu items.\r
222 \r
223      classtype       The fully qualified classtype for this bean.\r
224                      If specified, the classtype must be a subclass of the interface\r
225                      "org.apache.struts.tiles.beans.MenuItem".\r
226 \r
227      icon            The bean 'icon' property.\r
228 \r
229      link            The bean 'link' property.\r
230 \r
231      tooltip         The bean 'tooltip' property.\r
232 \r
233      value           The bean 'value' property.\r
234 -->\r
235 <!ELEMENT item (#PCDATA)>\r
236 <!ATTLIST item             id               ID              #IMPLIED>\r
237 <!ATTLIST item             classtype        %ClassName;     #IMPLIED>\r
238 <!ATTLIST item             icon             CDATA           #IMPLIED>\r
239 <!ATTLIST item             link             CDATA           #REQUIRED>\r
240 <!ATTLIST item             tooltip          CDATA           #IMPLIED>\r
241 <!ATTLIST item             value            CDATA           #REQUIRED>\r
242 \r
243 \r
244 <!-- ========== Info Elements ====================================== -->\r
245 \r
246 <!-- The "description" element contains descriptive (paragraph length) text\r
247      about the surrounding element, suitable for use in GUI tools.\r
248 -->\r
249 <!ELEMENT description    (#PCDATA)>\r
250 <!ATTLIST description    id             ID              #IMPLIED>\r
251 \r
252 \r
253 <!-- The "display-name" element contains a short (one line) description of\r
254      the surrounding element, suitable for use in GUI tools.\r
255 -->\r
256 <!ELEMENT display-name (#PCDATA)>\r
257 <!ATTLIST display-name   id             ID              #IMPLIED>\r
258 \r
259 \r
260 <!-- The "icon" element contains a small-icon and large-icon element which\r
261      specify the location, relative to the Struts configuration file, for small\r
262      and large images used to represent the surrounding element in GUI tools.\r
263 -->\r
264 <!ELEMENT icon           (small-icon?, large-icon?)>\r
265 <!ATTLIST icon           id             ID              #IMPLIED>\r
266 \r
267 \r
268 <!-- The "large-icon" element specifies the location, relative to the Struts\r
269      configuration file, of a resource containing a large (32x32 pixel)\r
270      icon image.\r
271 -->\r
272 <!ELEMENT large-icon     (%Location;)>\r
273 <!ATTLIST large-icon     id             ID              #IMPLIED>\r
274 \r
275 \r
276 <!-- The "small-icon" element specifies the location, relative to the Struts\r
277      configuration file, of a resource containing a small (16x16 pixel)\r
278      icon image.\r
279 -->\r
280 <!ELEMENT small-icon     (%Location;)>\r
281 <!ATTLIST small-icon     id             ID              #IMPLIED>\r