You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

soextblx.dtd 13KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  1. <!-- XML EXCHANGE TABLE MODEL DECLARATION MODULE -->
  2. <!-- This set of declarations defines the XML version of the Exchange
  3. Table Model as of the date shown in the Formal Public Identifier
  4. (FPI) for this entity.
  5. This set of declarations may be referred to using a public external
  6. entity declaration and reference as shown in the following three
  7. lines:
  8. <!ENTITY % calstblx
  9. PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN">
  10. %calstblx;
  11. If various parameter entities used within this set of declarations
  12. are to be given non-default values, the appropriate declarations
  13. should be given before calling in this package (i.e., before the
  14. "%calstblx;" reference).
  15. -->
  16. <!-- The motivation for this XML version of the Exchange Table Model
  17. is simply to create an XML version of the SGML Exchange Table
  18. Model. By design, no effort has been made to "improve" the model.
  19. This XML version incorporates the logical bare minimum changes
  20. necessary to make the Exchange Table Model a valid XML DTD.
  21. -->
  22. <!-- The XML version of the Exchange Table Model differs from
  23. the SGML version in the following ways:
  24. The following parameter entities have been removed:
  25. - tbl.table.excep, tbl.hdft.excep, tbl.row.excep, tbl.entry.excep
  26. There are no exceptions in XML. The following normative statement
  27. is made in lieu of exceptions: the exchange table model explicitly
  28. forbids a table from occurring within another table. If the
  29. content model of an entry includes a table element, then this
  30. cannot be enforced by the DTD, but it is a deviation from the
  31. exchange table model to include a table within a table.
  32. - tbl.hdft.name, tbl.hdft.mdl, tbl.hdft.excep, tbl.hdft.att
  33. The motivation for these elements was to change the table
  34. header/footer elements. Since XML does not allow element declarations
  35. to contain name groups, and the exchange table model does not
  36. allow a table to contain footers, the continued presence of these
  37. attributes seems unnecessary.
  38. The following parameter entity has been added:
  39. - tbl.thead.att
  40. This entity parameterizes the attributes on thead. It replaces
  41. the tbl.hdft.att parameter entity.
  42. Other miscellaneous changes:
  43. - Tag ommission indicators have been removed
  44. - Comments have been removed from declarations
  45. - NUMBER attributes have been changed to NMTOKEN
  46. - NUTOKEN attributes have been to changed to NMTOKEN
  47. - Removed the grouping characters around the content model
  48. parameter entry for the 'entry' element. This is necessary
  49. so that an entry can contain #PCDATA and be defined as an
  50. optional, repeatable OR group beginning with #PCDATA.
  51. -->
  52. <!-- This entity includes a set of element and attribute declarations
  53. that partially defines the Exchange table model. However, the model
  54. is not well-defined without the accompanying natural language
  55. description of the semantics (meanings) of these various elements,
  56. attributes, and attribute values. The semantic writeup, also available
  57. from SGML Open, should be used in conjunction with this entity.
  58. -->
  59. <!-- In order to use the Exchange table model, various parameter entity
  60. declarations are required. A brief description is as follows:
  61. ENTITY NAME WHERE USED WHAT IT IS
  62. %yesorno In ATTLIST of: An attribute declared value
  63. almost all elements for a "boolean" attribute
  64. %paracon In content model of: The "text" (logical content)
  65. <entry> of the model group for <entry>
  66. %titles In content model of: The "title" part of the model
  67. table element group for the table element
  68. %tbl.table.name In declaration of: The name of the "table"
  69. table element element
  70. %tbl.table-titles.mdl In content model of: The model group for the title
  71. table elements part of the content model for
  72. table element
  73. %tbl.table.mdl In content model of: The model group for the content
  74. table elements model for table element,
  75. often (and by default) defined
  76. in terms of %tbl.table-titles.mdl
  77. and tgroup
  78. %tbl.table.att In ATTLIST of: Additional attributes on the
  79. table element table element
  80. %bodyatt In ATTLIST of: Additional attributes on the
  81. table element table element (for backward
  82. compatibility with the SGML
  83. model)
  84. %tbl.tgroup.mdl In content model of: The model group for the content
  85. <tgroup> model for <tgroup>
  86. %tbl.tgroup.att In ATTLIST of: Additional attributes on the
  87. <tgroup> <tgroup> element
  88. %tbl.thead.att In ATTLIST of: Additional attributes on the
  89. <thead> <thead> element
  90. %tbl.tbody.att In ATTLIST of: Additional attributes on the
  91. <tbody> <tbody> element
  92. %tbl.colspec.att In ATTLIST of: Additional attributes on the
  93. <colspec> <colspec> element
  94. %tbl.row.mdl In content model of: The model group for the content
  95. <row> model for <row>
  96. %tbl.row.att In ATTLIST of: Additional attributes on the
  97. <row> <row> element
  98. %tbl.entry.mdl In content model of: The model group for the content
  99. <entry> model for <entry>
  100. %tbl.entry.att In ATTLIST of: Additional attributes on the
  101. <entry> <entry> element
  102. This set of declarations will use the default definitions shown below
  103. for any of these parameter entities that are not declared before this
  104. set of declarations is referenced.
  105. -->
  106. <!-- These definitions are not directly related to the table model, but are
  107. used in the default CALS table model and may be defined elsewhere (and
  108. prior to the inclusion of this table module) in the referencing DTD. -->
  109. <!ENTITY % yesorno 'NMTOKEN'> <!-- no if zero(s), yes if any other value -->
  110. <!ENTITY % titles 'title?'>
  111. <!ENTITY % pcd "#PCDATA">
  112. <!ENTITY % paracon '%pcd;'> <!-- default for use in entry content -->
  113. <!--
  114. The parameter entities as defined below change and simplify the CALS table
  115. model as published (as part of the Example DTD) in MIL-HDBK-28001. The
  116. resulting simplified DTD has support from the SGML Open vendors and is
  117. therefore more interoperable among different systems.
  118. These following declarations provide the Exchange default definitions
  119. for these entities. However, these entities can be redefined (by giving
  120. the appropriate parameter entity declaration(s) prior to the reference
  121. to this Table Model declaration set entity) to fit the needs of the
  122. current application.
  123. Note, however, that changes may have significant effect on the ability to
  124. interchange table information. These changes may manifest themselves
  125. in useability, presentation, and possible structure information degradation.
  126. -->
  127. <!ENTITY % tbl.table.name "table">
  128. <!ENTITY % tbl.table-titles.mdl "%titles;,">
  129. <!ENTITY % tbl.table-main.mdl "tgroup+">
  130. <!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
  131. <!ENTITY % tbl.table.att "
  132. pgwide %yesorno; #IMPLIED ">
  133. <!ENTITY % bodyatt "">
  134. <!ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody">
  135. <!ENTITY % tbl.tgroup.att "">
  136. <!ENTITY % tbl.thead.att "">
  137. <!ENTITY % tbl.tbody.att "">
  138. <!ENTITY % tbl.colspec.att "">
  139. <!ENTITY % tbl.row.mdl "entry+">
  140. <!ENTITY % tbl.row.att "">
  141. <!ENTITY % tbl.entry.mdl "(%paracon;)*">
  142. <!ENTITY % tbl.entry.att "">
  143. <!-- ===== Element and attribute declarations follow. ===== -->
  144. <!--
  145. Default declarations previously defined in this entity and
  146. referenced below include:
  147. ENTITY % tbl.table.name "table"
  148. ENTITY % tbl.table-titles.mdl "%titles;,"
  149. ENTITY % tbl.table.mdl "%tbl.table-titles; tgroup+"
  150. ENTITY % tbl.table.att "
  151. pgwide %yesorno; #IMPLIED "
  152. -->
  153. <!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
  154. <!ATTLIST %tbl.table.name;
  155. frame (top|bottom|topbot|all|sides|none) #IMPLIED
  156. colsep %yesorno; #IMPLIED
  157. rowsep %yesorno; #IMPLIED
  158. %tbl.table.att;
  159. %bodyatt;
  160. >
  161. <!--
  162. Default declarations previously defined in this entity and
  163. referenced below include:
  164. ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody"
  165. ENTITY % tbl.tgroup.att ""
  166. -->
  167. <!ELEMENT tgroup (%tbl.tgroup.mdl;) >
  168. <!ATTLIST tgroup
  169. cols NMTOKEN #REQUIRED
  170. colsep %yesorno; #IMPLIED
  171. rowsep %yesorno; #IMPLIED
  172. align (left|right|center|justify|char) #IMPLIED
  173. %tbl.tgroup.att;
  174. >
  175. <!--
  176. Default declarations previously defined in this entity and
  177. referenced below include:
  178. ENTITY % tbl.colspec.att ""
  179. -->
  180. <!ELEMENT colspec EMPTY >
  181. <!ATTLIST colspec
  182. colnum NMTOKEN #IMPLIED
  183. colname NMTOKEN #IMPLIED
  184. colwidth CDATA #IMPLIED
  185. colsep %yesorno; #IMPLIED
  186. rowsep %yesorno; #IMPLIED
  187. align (left|right|center|justify|char) #IMPLIED
  188. char CDATA #IMPLIED
  189. charoff NMTOKEN #IMPLIED
  190. %tbl.colspec.att;
  191. >
  192. <!--
  193. Default declarations previously defined in this entity and
  194. referenced below include:
  195. ENTITY % tbl.thead.att ""
  196. -->
  197. <!ELEMENT thead (row+)>
  198. <!ATTLIST thead
  199. valign (top|middle|bottom) #IMPLIED
  200. %tbl.thead.att;
  201. >
  202. <!--
  203. Default declarations previously defined in this entity and
  204. referenced below include:
  205. ENTITY % tbl.tbody.att ""
  206. -->
  207. <!ELEMENT tbody (row+)>
  208. <!ATTLIST tbody
  209. valign (top|middle|bottom) #IMPLIED
  210. %tbl.tbody.att;
  211. >
  212. <!--
  213. Default declarations previously defined in this entity and
  214. referenced below include:
  215. ENTITY % tbl.row.mdl "entry+"
  216. ENTITY % tbl.row.att ""
  217. -->
  218. <!ELEMENT row (%tbl.row.mdl;)>
  219. <!ATTLIST row
  220. rowsep %yesorno; #IMPLIED
  221. valign (top|middle|bottom) #IMPLIED
  222. %tbl.row.att;
  223. >
  224. <!--
  225. Default declarations previously defined in this entity and
  226. referenced below include:
  227. ENTITY % paracon "#PCDATA"
  228. ENTITY % tbl.entry.mdl "(%paracon;)*"
  229. ENTITY % tbl.entry.att ""
  230. -->
  231. <!ELEMENT entry %tbl.entry.mdl;>
  232. <!ATTLIST entry
  233. colname NMTOKEN #IMPLIED
  234. namest NMTOKEN #IMPLIED
  235. nameend NMTOKEN #IMPLIED
  236. morerows NMTOKEN #IMPLIED
  237. colsep %yesorno; #IMPLIED
  238. rowsep %yesorno; #IMPLIED
  239. align (left|right|center|justify|char) #IMPLIED
  240. char CDATA #IMPLIED
  241. charoff NMTOKEN #IMPLIED
  242. valign (top|middle|bottom) #IMPLIED
  243. %tbl.entry.att;
  244. >