]> git.sur5r.net Git - glabels/blob - glabels2/data/glabels-2.0.dtd
2003-12-30 Wayne Schuller <k_wayne@linuxpower.org>
[glabels] / glabels2 / data / glabels-2.0.dtd
1
2 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
3 <!-- ENTITIES: primitive types used in element attributes                 -->
4 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
5
6 <!-- primitives -->
7 <!ENTITY % BOOLEAN_TYPE       "(False | True | 0 | 1)">
8 <!ENTITY % STRING_TYPE        "CDATA">
9 <!ENTITY % LENGTH_TYPE        "CDATA"> <!-- %g (pt|in|mm|cm|pc) -->
10 <!ENTITY % INT_TYPE           "CDATA"> <!-- %d | 0x%x | 0%o -->
11 <!ENTITY % UINT_TYPE          "CDATA"> <!-- %u | 0x%x | 0%o -->
12 <!ENTITY % FLOAT_TYPE         "CDATA"> <!-- %g -->
13
14 <!-- Text related enumerations/types -->
15 <!ENTITY % JUSTIFY_TYPE       "(Left | Right | Center)">
16 <!ENTITY % FONT_WEIGHT_TYPE   "(Regular | Bold)">
17
18 <!-- Barcode related enumerations/types -->
19 <!ENTITY % BC_STYLE_TYPE      "(POSTNET  |
20                                 EAN      |
21                                 UPC      |
22                                 ISBN     |
23                                 Code39   |
24                                 Code128  |
25                                 Code128C |
26                                 Code128B |
27                                 I25      |
28                                 CBR      |
29                                 MSI      |
30                                 PLS)"
31 >
32
33 <!-- Data encoding method -->
34 <!ENTITY % DATA_ENCODING_TYPE "(None | Base64)">
35
36 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
37 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
38 <!-- Top-level glabels paper data base                                    -->
39 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
40 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
41 <!ELEMENT Glabels-paper-sizes (Paper-size*)>
42
43 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
44 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
45 <!-- Top-level glabels template data base                                 -->
46 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
47 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
48 <!ELEMENT Glabels-templates (Template*)>
49
50 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
51 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
52 <!-- Top-level glabels document                                           -->
53 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
54 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
55 <!ELEMENT Glabels-document (Template, Objects+, Merge?, Data*)>
56
57 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
58 <!-- Paper size                                                           -->
59 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
60 <!ELEMENT Paper-size EMPTY>
61 <!ATTLIST Paper-size
62                  id              %STRING_TYPE;           #REQUIRED
63                  name            %STRING_TYPE;           #IMPLIED
64                  _name           %STRING_TYPE;           #IMPLIED
65                  width           %LENGTH_TYPE;           #REQUIRED
66                  height          %LENGTH_TYPE;           #REQUIRED
67 >
68
69 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
70 <!-- Template Section                                                     -->
71 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
72 <!ENTITY % label_element  "Label-rectangle | Label-round | Label-cd">
73 <!ENTITY % markup_element "Markup-margin | Markup-line | Markup-circle">
74
75 <!ELEMENT Template ((%label_element;)+, Alias*)>
76 <!ATTLIST Template
77                  name            %STRING_TYPE;           #REQUIRED
78                  size            %STRING_TYPE;           #REQUIRED
79                  width           %LENGTH_TYPE;           #IMPLIED
80                  height          %LENGTH_TYPE;           #IMPLIED
81                  description     %STRING_TYPE;           #IMPLIED
82                  _description    %STRING_TYPE;           #IMPLIED
83 >
84
85 <!ELEMENT Label-rectangle ((%markup_element;)*, Layout+)>
86 <!ATTLIST Label-rectangle
87                  id              %STRING_TYPE;           #REQUIRED
88                  width           %LENGTH_TYPE;           #REQUIRED
89                  height          %LENGTH_TYPE;           #REQUIRED
90                  round           %LENGTH_TYPE;           "0 pt"
91                  waste           %LENGTH_TYPE;           #IMPLIED
92 >
93
94 <!ELEMENT Label-round ((%markup_element;)*, Layout+)>
95 <!ATTLIST Label-round
96                  id              %STRING_TYPE;           #REQUIRED
97                  radius          %LENGTH_TYPE;           #REQUIRED
98                  waste           %LENGTH_TYPE;           #IMPLIED
99 >
100
101 <!ELEMENT Label-cd ((%markup_element;)*, Layout+)>
102 <!ATTLIST Label-cd
103                  id              %STRING_TYPE;           #REQUIRED
104                  radius          %LENGTH_TYPE;           #REQUIRED
105                  hole            %LENGTH_TYPE;           #REQUIRED
106                  width           %LENGTH_TYPE;           #IMPLIED
107                  height          %LENGTH_TYPE;           #IMPLIED
108                  waste           %LENGTH_TYPE;           #IMPLIED
109 >
110
111 <!ELEMENT Markup-margin EMPTY>
112 <!ATTLIST Markup-margin
113                  size            %LENGTH_TYPE;           #REQUIRED
114 >
115
116 <!ELEMENT Markup-line EMPTY>
117 <!ATTLIST Markup-line
118                  x1              %LENGTH_TYPE;           #REQUIRED
119                  y1              %LENGTH_TYPE;           #REQUIRED
120                  x2              %LENGTH_TYPE;           #REQUIRED
121                  y2              %LENGTH_TYPE;           #REQUIRED
122 >
123
124 <!ELEMENT Markup-circle EMPTY>
125 <!ATTLIST Markup-circle
126                  x0              %LENGTH_TYPE;           #REQUIRED
127                  y0              %LENGTH_TYPE;           #REQUIRED
128                  radius          %LENGTH_TYPE;           #REQUIRED
129 >
130
131 <!ELEMENT Layout EMPTY>
132 <!ATTLIST Layout
133                  nx              %UINT_TYPE;             #REQUIRED
134                  ny              %UINT_TYPE;             #REQUIRED
135                  x0              %LENGTH_TYPE;           "0 pt"
136                  y0              %LENGTH_TYPE;           "0 pt"
137                  dx              %LENGTH_TYPE;           "0 pt"
138                  dy              %LENGTH_TYPE;           "0 pt"
139 >
140
141 <!ELEMENT Alias EMPTY>
142 <!ATTLIST Alias
143                  name            %STRING_TYPE;           #REQUIRED
144 >
145
146 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
147 <!-- Objects Section                                                      -->
148 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
149 <!ENTITY % object_class_element  "Object-text    |
150                                   Object-box     |
151                                   Object-line    |
152                                   Object-ellipse |
153                                   Object-image   |
154                                   Object-barcode"
155 >
156
157 <!ELEMENT Objects ((%object_class_element;)*)>
158 <!ATTLIST Objects
159                  id              %STRING_TYPE;           #REQUIRED
160                  rotate          %BOOLEAN_TYPE;          #REQUIRED
161 >
162
163 <!ENTITY % position_attrs
164                  "x              %LENGTH_TYPE;           #REQUIRED
165                   y              %LENGTH_TYPE;           #REQUIRED"
166 >
167
168 <!ENTITY % size_attrs
169                  "w              %LENGTH_TYPE;           #REQUIRED
170                   h              %LENGTH_TYPE;           #REQUIRED"
171 >
172
173 <!ENTITY % line_attrs
174                  "line_width      %LENGTH_TYPE;          #IMPLIED
175                   line_color      %UINT_TYPE;            #IMPLIED"
176 >
177
178 <!ENTITY % fill_attrs
179                  "fill_color      %UINT_TYPE;            #IMPLIED"
180 >
181
182 <!ENTITY % affine_attrs
183                  "a0              %FLOAT_TYPE;           #IMPLIED
184                   a1              %FLOAT_TYPE;           #IMPLIED
185                   a2              %FLOAT_TYPE;           #IMPLIED
186                   a3              %FLOAT_TYPE;           #IMPLIED
187                   a4              %FLOAT_TYPE;           #IMPLIED
188                   a5              %FLOAT_TYPE;           #IMPLIED"
189 >
190
191 <!ENTITY % shadow_attrs
192                  ""
193 >
194
195 <!ELEMENT Object-text (Span)>
196 <!ATTLIST Object-text
197                  %position_attrs;
198                  %size_attrs;
199                  justify         %JUSTIFY_TYPE;          #REQUIRED
200                  %affine_attrs;
201                  %shadow_attrs;
202 >
203
204 <!ELEMENT Object-box EMPTY>
205 <!ATTLIST Object-box
206                  %position_attrs;
207                  %size_attrs;
208                  %line_attrs;
209                  %fill_attrs;
210                  %affine_attrs;
211                  %shadow_attrs;
212 >
213
214 <!ELEMENT Object-ellipse EMPTY>
215 <!ATTLIST Object-ellipse
216                  %position_attrs;
217                  %size_attrs;
218                  %line_attrs;
219                  %fill_attrs;
220                  %affine_attrs;
221                  %shadow_attrs;
222 >
223
224 <!ELEMENT Object-line EMPTY>
225 <!ATTLIST Object-line
226                  %position_attrs;
227                  dx              %LENGTH_TYPE;           #REQUIRED
228                  dy              %LENGTH_TYPE;           #REQUIRED
229                  %line_attrs;
230                  %affine_attrs;
231                  %shadow_attrs;
232 >
233
234 <!ELEMENT Object-image EMPTY>
235 <!ATTLIST Object-image
236                  %position_attrs;
237                  %size_attrs;
238                  src             %STRING_TYPE;           #IMPLIED
239                  field           %STRING_TYPE;           #IMPLIED
240                  embed           %BOOLEAN_TYPE;          #IMPLIED
241                  %affine_attrs;
242                  %shadow_attrs;
243 >
244
245 <!ELEMENT Object-barcode EMPTY>
246 <!ATTLIST Object-barcode
247                  %position_attrs;
248                  %size_attrs;
249                  style           %BC_STYLE_TYPE;         #REQUIRED
250                  text            %BOOLEAN_TYPE;          #REQUIRED
251                  checksum        %BOOLEAN_TYPE;          #REQUIRED
252                  color           %UINT_TYPE;             #REQUIRED
253                  data            %STRING_TYPE;           #IMPLIED
254                  field           %STRING_TYPE;           #IMPLIED
255                  %affine_attrs;
256                  %shadow_attrs;
257 >
258
259
260
261 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
262 <!-- Merge Section                                                        -->
263 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
264 <!ELEMENT Merge EMPTY>
265 <!ATTLIST Merge
266                  type            %STRING_TYPE;           #REQUIRED
267                  src             %STRING_TYPE;           #IMPLIED
268 >
269
270 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
271 <!-- Data Section                                                         -->
272 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
273 <!ENTITY % data_element "Pixdata">
274
275 <!ELEMENT Data (%data_element;)*>
276
277 <!-- Inline Pixdata -->
278 <!ELEMENT Pixdata (#PCDATA)>
279 <!ATTLIST Pixdata
280                  name            %STRING_TYPE;           #REQUIRED
281                  encoding        %DATA_ENCODING_TYPE;    "Base64"
282 >
283
284
285 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
286 <!-- Text elements                                                        -->
287 <!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
288 <!ENTITY % text_element "#PCDATA | Span | Field | NL">
289
290 <!ELEMENT Span (%text_element;)*>
291 <!ATTLIST Span
292                  font_family     %STRING_TYPE;           #IMPLIED
293                  font_size       %LENGTH_TYPE;           #IMPLIED
294                  font_weight     %FONT_WEIGHT_TYPE;      #IMPLIED
295                  font_italic     %BOOLEAN_TYPE;          #IMPLIED
296                  color           %UINT_TYPE;             #IMPLIED
297                  line_spacing    %LENGTH_TYPE;           #IMPLIED
298 >
299
300 <!ELEMENT Field EMPTY>
301 <!ATTLIST Field
302                  name            %STRING_TYPE;           #REQUIRED
303 >
304
305 <!ELEMENT NL EMPTY>
306
307