PageRenderTime 105ms CodeModel.GetById 89ms app.highlight 13ms RepoModel.GetById 1ms app.codeStats 0ms

/bundles/plugins-trunk/XML/xml/dtds/xhtml11-model-1.mod

#
Unknown | 250 lines | 194 code | 56 blank | 0 comment | 0 complexity | d0e2257966466246c7c9e99a923d30ca MD5 | raw file
  1<!-- ....................................................................... -->
  2<!-- XHTML 1.1 Document Model Module  ...................................... -->
  3<!-- file: xhtml11-model-1.mod
  4
  5     This is XHTML 1.1, a reformulation of HTML as a modular XML application.
  6     Copyright 1998-2001 W3C (MIT, INRIA, Keio), All Rights Reserved.
  7     Revision: $Id: xhtml11-model-1.mod 160 2003-01-14 22:49:50Z spestov $ SMI
  8
  9     This DTD module is identified by the PUBLIC and SYSTEM identifiers:
 10
 11       PUBLIC "-//W3C//ENTITIES XHTML 1.1 Document Model 1.0//EN"
 12       SYSTEM "http://www.w3.org/TR/xhtml11/DTD/xhtml11-model-1.mod"
 13
 14     Revisions:
 15     (none)
 16     ....................................................................... -->
 17
 18<!-- XHTML 1.1 Document Model
 19
 20     This module describes the groupings of elements that make up
 21     common content models for XHTML elements.
 22
 23     XHTML has three basic content models:
 24
 25         %Inline.mix;  character-level elements
 26         %Block.mix;   block-like elements, eg., paragraphs and lists
 27         %Flow.mix;    any block or inline elements
 28
 29     Any parameter entities declared in this module may be used
 30     to create element content models, but the above three are
 31     considered 'global' (insofar as that term applies here).
 32
 33     The reserved word '#PCDATA' (indicating a text string) is now
 34     included explicitly with each element declaration that is
 35     declared as mixed content, as XML requires that this token
 36     occur first in a content model specification.
 37-->
 38<!-- Extending the Model
 39
 40     While in some cases this module may need to be rewritten to
 41     accommodate changes to the document model, minor extensions
 42     may be accomplished by redeclaring any of the three *.extra;
 43     parameter entities to contain extension element types as follows:
 44
 45         %Misc.extra;    whose parent may be any block or
 46                         inline element.
 47
 48         %Inline.extra;  whose parent may be any inline element.
 49
 50         %Block.extra;   whose parent may be any block element.
 51
 52     If used, these parameter entities must be an OR-separated
 53     list beginning with an OR separator ("|"), eg., "| a | b | c"
 54
 55     All block and inline *.class parameter entities not part
 56     of the *struct.class classes begin with "| " to allow for
 57     exclusion from mixes.
 58-->
 59
 60<!-- ..............  Optional Elements in head  .................. -->
 61
 62<!ENTITY % HeadOpts.mix
 63     "( %script.qname; | %style.qname; | %meta.qname;
 64      | %link.qname; | %object.qname; )*"
 65>
 66
 67<!-- .................  Miscellaneous Elements  .................. -->
 68
 69<!-- ins and del are used to denote editing changes
 70-->
 71<!ENTITY % Edit.class "| %ins.qname; | %del.qname;" >
 72
 73<!-- script and noscript are used to contain scripts
 74     and alternative content
 75-->
 76<!ENTITY % Script.class "| %script.qname; | %noscript.qname;" >
 77
 78<!ENTITY % Misc.extra "" >
 79
 80<!-- These elements are neither block nor inline, and can
 81     essentially be used anywhere in the document body.
 82-->
 83<!ENTITY % Misc.class
 84     "%Edit.class;
 85      %Script.class;
 86      %Misc.extra;"
 87>
 88
 89<!-- ....................  Inline Elements  ...................... -->
 90
 91<!ENTITY % InlStruct.class "%br.qname; | %span.qname;" >
 92
 93<!ENTITY % InlPhras.class
 94     "| %em.qname; | %strong.qname; | %dfn.qname; | %code.qname;
 95      | %samp.qname; | %kbd.qname; | %var.qname; | %cite.qname;
 96      | %abbr.qname; | %acronym.qname; | %q.qname;" >
 97
 98<!ENTITY % InlPres.class
 99     "| %tt.qname; | %i.qname; | %b.qname; | %big.qname;
100      | %small.qname; | %sub.qname; | %sup.qname;" >
101
102<!ENTITY % I18n.class "| %bdo.qname;" >
103
104<!ENTITY % Anchor.class "| %a.qname;" >
105
106<!ENTITY % InlSpecial.class
107     "| %img.qname; | %map.qname;
108      | %object.qname;" >
109
110<!ENTITY % InlForm.class
111     "| %input.qname; | %select.qname; | %textarea.qname;
112      | %label.qname; | %button.qname;" >
113
114<!ENTITY % Inline.extra "" >
115
116<!ENTITY % Ruby.class "| %ruby.qname;" >
117
118<!-- %Inline.class; includes all inline elements,
119     used as a component in mixes
120-->
121<!ENTITY % Inline.class
122     "%InlStruct.class;
123      %InlPhras.class;
124      %InlPres.class;
125      %I18n.class;
126      %Anchor.class;
127      %InlSpecial.class;
128      %InlForm.class;
129      %Ruby.class;
130      %Inline.extra;"
131>
132
133<!-- %InlNoRuby.class; includes all inline elements
134     except ruby, used as a component in mixes
135-->
136<!ENTITY % InlNoRuby.class
137     "%InlStruct.class;
138      %InlPhras.class;
139      %InlPres.class;
140      %I18n.class;
141      %Anchor.class;
142      %InlSpecial.class;
143      %InlForm.class;
144      %Inline.extra;"
145>
146
147<!-- %NoRuby.content; includes all inlines except ruby
148-->
149<!ENTITY % NoRuby.content
150     "( #PCDATA
151      | %InlNoRuby.class;
152      %Misc.class; )*"
153>
154
155<!-- %InlNoAnchor.class; includes all non-anchor inlines,
156     used as a component in mixes
157-->
158<!ENTITY % InlNoAnchor.class
159     "%InlStruct.class;
160      %InlPhras.class;
161      %InlPres.class;
162      %I18n.class;
163      %InlSpecial.class;
164      %InlForm.class;
165      %Ruby.class;
166      %Inline.extra;"
167>
168
169<!-- %InlNoAnchor.mix; includes all non-anchor inlines
170-->
171<!ENTITY % InlNoAnchor.mix
172     "%InlNoAnchor.class;
173      %Misc.class;"
174>
175
176<!-- %Inline.mix; includes all inline elements, including %Misc.class;
177-->
178<!ENTITY % Inline.mix
179     "%Inline.class;
180      %Misc.class;"
181>
182
183<!-- .....................  Block Elements  ...................... -->
184
185<!-- In the HTML 4.0 DTD, heading and list elements were included
186     in the %block; parameter entity. The %Heading.class; and
187     %List.class; parameter entities must now be included explicitly
188     on element declarations where desired.
189-->
190
191<!ENTITY % Heading.class
192     "%h1.qname; | %h2.qname; | %h3.qname;
193      | %h4.qname; | %h5.qname; | %h6.qname;" >
194
195<!ENTITY % List.class "%ul.qname; | %ol.qname; | %dl.qname;" >
196
197<!ENTITY % Table.class "| %table.qname;" >
198
199<!ENTITY % Form.class  "| %form.qname;" >
200
201<!ENTITY % Fieldset.class  "| %fieldset.qname;" >
202
203<!ENTITY % BlkStruct.class "%p.qname; | %div.qname;" >
204
205<!ENTITY % BlkPhras.class
206     "| %pre.qname; | %blockquote.qname; | %address.qname;" >
207
208<!ENTITY % BlkPres.class "| %hr.qname;" >
209
210<!ENTITY % BlkSpecial.class
211     "%Table.class;
212      %Form.class;
213      %Fieldset.class;"
214>
215
216<!ENTITY % Block.extra "" >
217
218<!-- %Block.class; includes all block elements,
219     used as an component in mixes
220-->
221<!ENTITY % Block.class
222     "%BlkStruct.class;
223      %BlkPhras.class;
224      %BlkPres.class;
225      %BlkSpecial.class;
226      %Block.extra;"
227>
228
229<!-- %Block.mix; includes all block elements plus %Misc.class;
230-->
231<!ENTITY % Block.mix
232     "%Heading.class;
233      | %List.class;
234      | %Block.class;
235      %Misc.class;"
236>
237
238<!-- ................  All Content Elements  .................. -->
239
240<!-- %Flow.mix; includes all text content, block and inline
241-->
242<!ENTITY % Flow.mix
243     "%Heading.class;
244      | %List.class;
245      | %Block.class;
246      | %Inline.class;
247      %Misc.class;"
248>
249
250<!-- end of xhtml11-model-1.mod -->