blob: 5ac829901b920a4be7c6b0f061260bacf5d73af0 [file] [log] [blame]
dacarvereb106902008-11-03 22:27:34 +00001<!-- ============================================================= -->
2<!-- HEADER -->
3<!-- ============================================================= -->
4<!-- MODULE: DITA DITA Programming Domain -->
5<!-- VERSION: 1.1 -->
6<!-- DATE: November 2006 -->
7<!-- -->
8<!-- ============================================================= -->
9
10<!-- ============================================================= -->
11<!-- PUBLIC DOCUMENT TYPE DEFINITION -->
12<!-- TYPICAL INVOCATION -->
13<!-- -->
14<!-- Refer to this file by the following public identifier or an
15 appropriate system identifier
16PUBLIC "-//OASIS//ELEMENTS DITA Programming Domain//EN"
17 Delivered as file "programmingDomain.mod" -->
18
19<!-- ============================================================= -->
20<!-- SYSTEM: Darwin Information Typing Architecture (DITA) -->
21<!-- -->
22<!-- PURPOSE: Declaring the elements and specialization -->
23<!-- attributes for the Programming Domain -->
24<!-- -->
25<!-- ORIGINAL CREATION DATE: -->
26<!-- March 2001 -->
27<!-- -->
28<!-- (C) Copyright OASIS Open 2005, 2006. -->
29<!-- (C) Copyright IBM Corporation 2001, 2004. -->
30<!-- All Rights Reserved. -->
31<!-- -->
32<!-- UPDATES: -->
33<!-- 2005.11.15 RDA: Updated these comments to match template -->
34<!-- 2005.11.15 RDA: Corrected Long Names for syntax groups, -->
35<!-- codeph, and kwd -->
36<!-- 2005.11.15 RDA: Corrected the "Delivered as" system ID -->
37<!-- 2006.06.07 RDA: Make universal attributes universal -->
38<!-- (DITA 1.1 proposal #12) -->
39<!-- 2006.11.30 RDA: Add -dita-use-conref-target to enumerated -->
40<!-- attributes -->
41<!-- ============================================================= -->
42
43
44<!-- ============================================================= -->
45<!-- ELEMENT NAME ENTITIES -->
46<!-- ============================================================= -->
47
48
49<!ENTITY % apiname "apiname" >
50<!ENTITY % codeblock "codeblock" >
51<!ENTITY % codeph "codeph" >
52<!ENTITY % delim "delim" >
53<!ENTITY % kwd "kwd" >
54<!ENTITY % oper "oper" >
55<!ENTITY % option "option" >
56<!ENTITY % parmname "parmname" >
57<!ENTITY % sep "sep" >
58<!ENTITY % synph "synph" >
59<!ENTITY % var "var" >
60
61<!ENTITY % parml "parml" >
62<!ENTITY % pd "pd" >
63<!ENTITY % plentry "plentry" >
64<!ENTITY % pt "pt" >
65
66<!ENTITY % fragment "fragment" >
67<!ENTITY % fragref "fragref" >
68<!ENTITY % groupchoice "groupchoice" >
69<!ENTITY % groupcomp "groupcomp" >
70<!ENTITY % groupseq "groupseq" >
71<!ENTITY % repsep "repsep" >
72<!ENTITY % synblk "synblk" >
73<!ENTITY % synnote "synnote" >
74<!ENTITY % synnoteref "synnoteref" >
75<!ENTITY % syntaxdiagram
76 "syntaxdiagram" >
77
78
79<!-- ============================================================= -->
80<!-- ELEMENT DECLARATIONS -->
81<!-- ============================================================= -->
82
83
84<!-- LONG NAME: Universal Attributes Local
85 Importance -->
86<!-- Povide an alternative set of univ-atts that
87 allows importance to be redefined locally -->
88<!ENTITY % univ-atts-no-importance
89 '%id-atts;
90 %filter-atts;
91 base CDATA #IMPLIED
92 %base-attribute-extensions;
93 rev CDATA #IMPLIED
94 status (new | changed | deleted |
95 unchanged |
96 -dita-use-conref-target) #IMPLIED
97 %localization-atts; ' >
98
99
100<!-- LONG NAME: Code Phrase -->
101<!ELEMENT codeph (#PCDATA | %basic.ph.notm; |
102 %data.elements.incl; |
103 %foreign.unknown.incl;)* >
104<!ATTLIST codeph
105 %univ-atts;
106 outputclass
107 CDATA #IMPLIED >
108
109
110<!-- LONG NAME: Code Block -->
111<!ELEMENT codeblock (#PCDATA | %basic.ph.notm; | %txt.incl; |
112 %data.elements.incl; |
113 %foreign.unknown.incl;)* >
114<!ATTLIST codeblock
115 %display-atts;
116 spectitle CDATA #IMPLIED
117 xml:space (preserve) #FIXED 'preserve'
118 %univ-atts;
119 outputclass
120 CDATA #IMPLIED >
121
122
123<!-- LONG NAME: Option -->
124<!ELEMENT option (#PCDATA) >
125<!ATTLIST option keyref CDATA #IMPLIED
126 %univ-atts;
127 outputclass CDATA #IMPLIED >
128
129
130<!-- LONG NAME: Variable -->
131<!ELEMENT var (%words.cnt;)* >
132<!ATTLIST var
133 importance (optional | required | default |
134 -dita-use-conref-target) #IMPLIED
135 %univ-atts-no-importance;
136 outputclass
137 CDATA #IMPLIED >
138
139
140<!-- LONG NAME: Parameter Name -->
141<!ELEMENT parmname (#PCDATA) >
142<!ATTLIST parmname
143 keyref CDATA #IMPLIED
144 %univ-atts;
145 outputclass
146 CDATA #IMPLIED >
147
148
149<!-- LONG NAME: Syntax Phrase -->
150<!ELEMENT synph (#PCDATA | %codeph; | %option; | %parmname; |
151 %var; | %kwd; | %oper; | %delim; | %sep; |
152 %synph;)* >
153<!ATTLIST synph
154 %univ-atts;
155 outputclass
156 CDATA #IMPLIED >
157
158
159<!-- LONG NAME: Operator -->
160<!ELEMENT oper (%words.cnt;)* >
161<!ATTLIST oper
162 importance (optional | required | default |
163 -dita-use-conref-target) #IMPLIED
164 %univ-atts-no-importance;
165 outputclass
166 CDATA #IMPLIED >
167
168
169<!-- LONG NAME: Delimiter -->
170<!ELEMENT delim (%words.cnt;)* >
171<!ATTLIST delim
172 importance (optional | required |
173 -dita-use-conref-target) #IMPLIED
174 %univ-atts-no-importance;
175 outputclass
176 CDATA #IMPLIED >
177
178
179<!-- LONG NAME: Separator -->
180<!ELEMENT sep (%words.cnt;)* >
181<!ATTLIST sep
182 importance (optional | required |
183 -dita-use-conref-target) #IMPLIED
184 %univ-atts-no-importance;
185 outputclass
186 CDATA #IMPLIED >
187
188
189<!-- LONG NAME: API Name -->
190<!ELEMENT apiname (#PCDATA) >
191<!ATTLIST apiname
192 keyref CDATA #IMPLIED
193 %univ-atts;
194 outputclass
195 CDATA #IMPLIED >
196
197
198<!-- LONG NAME: Parameter List -->
199<!ELEMENT parml (%plentry;)+ >
200<!ATTLIST parml
201 compact (yes | no |
202 -dita-use-conref-target) #IMPLIED
203 spectitle CDATA #IMPLIED
204 %univ-atts;
205 outputclass
206 CDATA #IMPLIED >
207
208
209<!-- LONG NAME: Parameter List Entry -->
210<!ELEMENT plentry ((%pt;)+, (%pd;)+) >
211<!ATTLIST plentry
212 %univ-atts;
213 outputclass
214 CDATA #IMPLIED >
215
216
217<!-- LONG NAME: Parameter Term -->
218<!ELEMENT pt (%term.cnt;)* >
219<!ATTLIST pt
220 keyref CDATA #IMPLIED
221 %univ-atts;
222 outputclass
223 CDATA #IMPLIED >
224
225
226<!-- LONG NAME: Parameter Description -->
227<!ELEMENT pd (%defn.cnt;)* >
228<!ATTLIST pd
229 %univ-atts;
230 outputclass
231 CDATA #IMPLIED >
232
233
234<!-- LONG NAME: Syntax Diagram -->
235<!ELEMENT syntaxdiagram ((%title;)?,
236 (%groupseq; | %groupchoice; | %groupcomp; |
237 %fragref; | %fragment; | %synblk; |
238 %synnote; | %synnoteref;)* ) >
239<!ATTLIST syntaxdiagram
240 %display-atts;
241 %univ-atts;
242 outputclass
243 CDATA #IMPLIED >
244
245
246<!-- LONG NAME: Syntax Block -->
247<!ELEMENT synblk ((%title;)?,
248 (%groupseq; | %groupchoice; | %groupcomp; |
249 %fragref; | %fragment;| %synnote; |
250 %synnoteref;)* ) >
251<!ATTLIST synblk
252 %univ-atts;
253 outputclass
254 CDATA #IMPLIED >
255
256
257<!-- LONG NAME: Sequence Group -->
258<!ELEMENT groupseq ((%title;)?, (%repsep;)?,
259 (%groupseq; | %groupchoice; | %groupcomp; |
260 %fragref; | %kwd; | %var; | %delim; |
261 %oper; | %sep; | %synnote; |
262 %synnoteref;)* ) >
263<!ATTLIST groupseq
264 importance (optional | required | default |
265 -dita-use-conref-target)
266 #IMPLIED
267 %univ-atts-no-importance;
268 outputclass
269 CDATA #IMPLIED >
270
271
272<!-- LONG NAME: Choice Group -->
273<!ELEMENT groupchoice ((%title;)?, (%repsep;)?,
274 (%groupseq; | %groupchoice; | %groupcomp; |
275 %fragref;| %kwd; | %var; | %delim; |
276 %oper; | %sep; | %synnote; |
277 %synnoteref;)* ) >
278<!ATTLIST groupchoice
279 importance (optional | required | default |
280 -dita-use-conref-target) #IMPLIED
281 %univ-atts-no-importance;
282 outputclass
283 CDATA #IMPLIED >
284
285
286<!-- LONG NAME: Composite group -->
287<!ELEMENT groupcomp ((%title;)?, (%repsep;)?,
288 (%groupseq; | %groupchoice; | %groupcomp; |
289 %fragref; | %kwd; | %var; | %delim; |
290 %oper; | %sep; | %synnote; |
291 %synnoteref;)* ) >
292<!ATTLIST groupcomp
293 importance (optional | required | default |
294 -dita-use-conref-target) #IMPLIED
295 %univ-atts-no-importance;
296 outputclass
297 CDATA #IMPLIED >
298
299
300<!-- LONG NAME: Fragment -->
301<!ELEMENT fragment ((%title;)?,
302 (%groupseq; | %groupchoice; | %groupcomp; |
303 %fragref; | %synnote; | %synnoteref;)* ) >
304<!ATTLIST fragment
305 %univ-atts;
306 outputclass
307 CDATA #IMPLIED >
308
309
310
311<!-- LONG NAME: Fragment Reference -->
312<!ELEMENT fragref (%xrefph.cnt;)*><!--xref-->
313<!ATTLIST fragref
314 href CDATA #IMPLIED
315 importance (optional | required |
316 -dita-use-conref-target) #IMPLIED
317 %univ-atts-no-importance;
318 outputclass
319 CDATA #IMPLIED >
320
321
322<!-- LONG NAME: Syntax Diagram Note -->
323<!ELEMENT synnote (#PCDATA | %basic.ph;)* >
324<!ATTLIST synnote
325 callout CDATA #IMPLIED
326 %univ-atts;
327 outputclass
328 CDATA #IMPLIED >
329
330
331<!-- LONG NAME: Syntax Note Reference -->
332<!ELEMENT synnoteref EMPTY >
333<!ATTLIST synnoteref
334 href CDATA #IMPLIED
335 %univ-atts;
336 outputclass
337 CDATA #IMPLIED >
338
339
340<!-- LONG NAME: Repeat Separator -->
341<!ELEMENT repsep (%words.cnt;)* >
342<!ATTLIST repsep
343 importance (optional | required |
344 -dita-use-conref-target) #IMPLIED
345 %univ-atts-no-importance;
346 outputclass
347 CDATA #IMPLIED >
348
349
350<!-- LONG NAME: Syntax Keyword -->
351<!ELEMENT kwd (#PCDATA) >
352<!ATTLIST kwd
353 keyref CDATA #IMPLIED
354 importance (optional | required | default |
355 -dita-use-conref-target) #IMPLIED
356 %univ-atts-no-importance;
357 outputclass
358 CDATA #IMPLIED >
359
360
361<!-- ============================================================= -->
362<!-- SPECIALIZATION ATTRIBUTE DECLARATIONS -->
363<!-- ============================================================= -->
364
365
366<!ATTLIST apiname %global-atts; class CDATA "+ topic/keyword pr-d/apiname " >
367<!ATTLIST codeblock %global-atts; class CDATA "+ topic/pre pr-d/codeblock " >
368<!ATTLIST codeph %global-atts; class CDATA "+ topic/ph pr-d/codeph " >
369<!ATTLIST delim %global-atts; class CDATA "+ topic/ph pr-d/delim " >
370<!ATTLIST fragment %global-atts; class CDATA "+ topic/figgroup pr-d/fragment ">
371<!ATTLIST fragref %global-atts; class CDATA "+ topic/xref pr-d/fragref " >
372<!ATTLIST groupchoice
373 %global-atts; class CDATA "+ topic/figgroup pr-d/groupchoice ">
374<!ATTLIST groupcomp %global-atts; class CDATA "+ topic/figgroup pr-d/groupcomp ">
375<!ATTLIST groupseq %global-atts; class CDATA "+ topic/figgroup pr-d/groupseq ">
376<!ATTLIST kwd %global-atts; class CDATA "+ topic/keyword pr-d/kwd " >
377<!ATTLIST oper %global-atts; class CDATA "+ topic/ph pr-d/oper " >
378<!ATTLIST option %global-atts; class CDATA "+ topic/keyword pr-d/option " >
379<!ATTLIST parml %global-atts; class CDATA "+ topic/dl pr-d/parml " >
380<!ATTLIST parmname %global-atts; class CDATA "+ topic/keyword pr-d/parmname " >
381<!ATTLIST pd %global-atts; class CDATA "+ topic/dd pr-d/pd " >
382<!ATTLIST plentry %global-atts; class CDATA "+ topic/dlentry pr-d/plentry " >
383<!ATTLIST pt %global-atts; class CDATA "+ topic/dt pr-d/pt " >
384<!ATTLIST repsep %global-atts; class CDATA "+ topic/ph pr-d/repsep " >
385<!ATTLIST sep %global-atts; class CDATA "+ topic/ph pr-d/sep " >
386<!ATTLIST synblk %global-atts; class CDATA "+ topic/figgroup pr-d/synblk " >
387<!ATTLIST synnote %global-atts; class CDATA "+ topic/fn pr-d/synnote " >
388<!ATTLIST synnoteref %global-atts; class CDATA "+ topic/xref pr-d/synnoteref " >
389<!ATTLIST synph %global-atts; class CDATA "+ topic/ph pr-d/synph " >
390<!ATTLIST syntaxdiagram
391 %global-atts; class CDATA "+ topic/fig pr-d/syntaxdiagram ">
392<!ATTLIST var %global-atts; class CDATA "+ topic/ph pr-d/var " >
393
394
395<!-- ================== End Programming Domain ====================== -->