397 lines
16 KiB
XML
397 lines
16 KiB
XML
<!-- ============================================================= -->
|
|
<!-- HEADER -->
|
|
<!-- ============================================================= -->
|
|
<!-- MODULE: XML EXCHANGE TABLE MODEL DECLARATION MODULE -->
|
|
<!-- VERSION: 1.1 -->
|
|
<!-- DATE: November 2006 -->
|
|
<!-- -->
|
|
<!-- ============================================================= -->
|
|
|
|
<!-- (C) Copyright OASIS Open 2005, 2006. -->
|
|
<!-- (C) Copyright IBM Corporation 2001, 2004. -->
|
|
<!-- All Rights Reserved. -->
|
|
<!-- -->
|
|
<!-- UPDATES: -->
|
|
<!-- 2005.11.15 RDA: Corrected the "Delivered as" system ID -->
|
|
<!-- 2006.06.07 RDA: Make universal attributes universal -->
|
|
<!-- (DITA 1.1 proposal #12) -->
|
|
<!-- 2006.11.30 RDA: Add -dita-use-conref-target to enumerated -->
|
|
<!-- attributes -->
|
|
|
|
<!-- ============================================================= -->
|
|
<!-- Delivered as file "tblDecl.mod" -->
|
|
<!-- ============================================================= -->
|
|
|
|
|
|
<!-- XML EXCHANGE TABLE MODEL DECLARATION MODULE -->
|
|
|
|
<!-- OASIS DITA 1.0 notes:
|
|
The Exchange Table Model replaces the original CALS-based model
|
|
used in development versions of the DITA definition.
|
|
This set of declarations defines the XML version of the Exchange
|
|
Table Model as adapted for OASIS DITA version 1.0.
|
|
The base for the DITA version of the Exchange Table Model is
|
|
defined at http://www.oasis-open.org/specs/tm9901.htm .
|
|
The DITA version specifically extends this model with these DITA-
|
|
specific content and attribute adaptations to the DITA processing
|
|
requirements:
|
|
|
|
STRUCTURE:
|
|
|
|
Introduce the DITA-unique <desc> element (optional after <title>); this element
|
|
enables more consistent presentation of both figures and tables.
|
|
|
|
|
|
ATTRIBUTES:
|
|
|
|
For frame, align, and valign attributes on any element:
|
|
Add the enumerated value -dita-use-conref-target for DITA 1.1.
|
|
|
|
For the <table> element, add:
|
|
%univ-atts; which consists of:
|
|
%select-atts; [for selection, conditional processing]
|
|
%id-atts; [for conref and linking]
|
|
%localization-atts (@translate + @xml:lang) [for NLS processing support]
|
|
%global-atts; (@xtrf + @xtrc) [for tracing and messaging support in processors]
|
|
@class [for specialization support]
|
|
@outputclass [for role designation (ie, styles, future migrations)]
|
|
@rowheader [for accessibility support in processing]
|
|
%display-atts; which consists of:
|
|
@scale [for presentational equivalence with other scaled exhibits: fig, pre, lines, simpletable]
|
|
@frame (already part of table)
|
|
@pgwide (already part of table, same intent as original @expanse)
|
|
|
|
For <tgroup>, <thead>, <tbody>, and <row>, add:
|
|
%univ-atts;
|
|
%global-atts;
|
|
@class
|
|
@outputclass [for role designation (ie, styles, future migrations)]
|
|
|
|
For <entry>, add:
|
|
%id-atts;
|
|
%global-atts
|
|
@class
|
|
@outputclass [for role designation (ie, styles, future migrations)]
|
|
@rev [for indication of revised content for flag-based processing]
|
|
|
|
-->
|
|
|
|
<!-- DITA specialization support: element redefinition for expansion -->
|
|
|
|
<!ENTITY % table "table">
|
|
<!ENTITY % tgroup "tgroup">
|
|
<!ENTITY % colspec "colspec">
|
|
<!ENTITY % thead "thead">
|
|
<!ENTITY % tbody "tbody">
|
|
<!ENTITY % row "row">
|
|
<!ENTITY % entry "entry">
|
|
|
|
<!-- The Formal Public Identifier (FPI) for this DITA adaptation of
|
|
the Exchange Table Model shall be:
|
|
|
|
"-//OASIS//ELEMENTS DITA Exchange Table Model//EN"
|
|
|
|
This set of declarations may be referred to using a public external
|
|
entity declaration and reference as shown in the following three
|
|
lines:
|
|
|
|
<!ENTITY % tableXML
|
|
PUBLIC "-//OASIS//ELEMENTS DITA Exchange Table Model//EN">
|
|
%tableXML;
|
|
-->
|
|
|
|
|
|
|
|
<!-- In order to use the Exchange table model, various parameter entity
|
|
declarations are required. A brief description is as follows:
|
|
|
|
ENTITY NAME WHERE USED WHAT IT IS
|
|
|
|
%yesorno In ATTLIST of: An attribute declared value
|
|
almost all elements for a "boolean" attribute
|
|
|
|
%paracon In content model of: The "text" (logical content)
|
|
<entry> of the model group for <entry>
|
|
|
|
%titles In content model of: The "title" part of the model
|
|
table element group for the table element
|
|
|
|
%tbl.table.name In declaration of: The name of the "table"
|
|
table element element
|
|
|
|
%tbl.table-titles.mdl In content model of: The model group for the title
|
|
table elements part of the content model for
|
|
table element
|
|
|
|
%tbl.table.mdl In content model of: The model group for the content
|
|
table elements model for table element,
|
|
often (and by default) defined
|
|
in terms of %tbl.table-titles.mdl
|
|
and tgroup
|
|
|
|
%tbl.table.att In ATTLIST of: Additional attributes on the
|
|
table element table element
|
|
|
|
%bodyatt In ATTLIST of: Additional attributes on the
|
|
table element table element (for backward
|
|
compatibility with the SGML
|
|
model)
|
|
|
|
%tbl.tgroup.mdl In content model of: The model group for the content
|
|
<tgroup> model for <tgroup>
|
|
|
|
%tbl.tgroup.att In ATTLIST of: Additional attributes on the
|
|
<tgroup> <tgroup> element
|
|
|
|
%tbl.thead.att In ATTLIST of: Additional attributes on the
|
|
<thead> <thead> element
|
|
|
|
%tbl.tbody.att In ATTLIST of: Additional attributes on the
|
|
<tbody> <tbody> element
|
|
|
|
%tbl.colspec.att In ATTLIST of: Additional attributes on the
|
|
<colspec> <colspec> element
|
|
|
|
%tbl.row.mdl In content model of: The model group for the content
|
|
<row> model for <row>
|
|
|
|
%tbl.row.att In ATTLIST of: Additional attributes on the
|
|
<row> <row> element
|
|
|
|
%tbl.entry.mdl In content model of: The model group for the content
|
|
<entry> model for <entry>
|
|
|
|
%tbl.entry.att In ATTLIST of: Additional attributes on the
|
|
<entry> <entry> element
|
|
|
|
This set of declarations will use the default definitions shown below
|
|
for any of these parameter entities that are not declared before this
|
|
set of declarations is referenced.
|
|
|
|
Note that DITA properties are added in cumulative declarations at the end.
|
|
-->
|
|
|
|
<!-- These definitions are not directly related to the table model, but are
|
|
used in the default CALS table model and may be defined elsewhere (and
|
|
prior to the inclusion of this table module) in the referencing DTD. -->
|
|
|
|
<!ENTITY % yesorno 'NMTOKEN'> <!-- no if zero(s), yes if any other value -->
|
|
<!ENTITY % titles 'title?'>
|
|
<!ENTITY % paracon '%tblcell.cnt;'> <!-- default for use in entry content -->
|
|
|
|
<!--
|
|
The parameter entities as defined below change and simplify the CALS table
|
|
model as published (as part of the Example DTD) in MIL-HDBK-28001. The
|
|
resulting simplified DTD has support from the SGML Open vendors and is
|
|
therefore more interoperable among different systems.
|
|
|
|
These following declarations provide the Exchange default definitions
|
|
for these entities. However, these entities can be redefined (by giving
|
|
the appropriate parameter entity declaration(s) prior to the reference
|
|
to this Table Model declaration set entity) to fit the needs of the
|
|
current application.
|
|
|
|
Note, however, that changes may have significant effect on the ability to
|
|
interchange table information. These changes may manifest themselves
|
|
in useability, presentation, and possible structure information degradation.
|
|
-->
|
|
|
|
<!ENTITY % tbl.table.name "table">
|
|
<!ENTITY % tbl.table-titles.mdl "((%title;)?, (%desc;)?)?,">
|
|
<!ENTITY % tbl.table-main.mdl "(%tgroup;)+">
|
|
<!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
|
|
<!ENTITY % tbl.table.att "
|
|
pgwide %yesorno; #IMPLIED ">
|
|
<!ENTITY % bodyatt "">
|
|
<!ENTITY % tbl.tgroup.mdl "(%colspec;)*, (%thead;)?, %tbody;">
|
|
<!ENTITY % tbl.tgroup.att "">
|
|
<!ENTITY % tbl.thead.att "">
|
|
<!ENTITY % tbl.tbody.att "">
|
|
<!ENTITY % tbl.colspec.att "base CDATA #IMPLIED
|
|
%base-attribute-extensions;">
|
|
<!ENTITY % tbl.row.mdl "(%entry;)+">
|
|
<!ENTITY % tbl.row.att "">
|
|
<!ENTITY % tbl.entry.mdl "(%paracon;)*">
|
|
<!ENTITY % tbl.entry.att "base CDATA #IMPLIED
|
|
%base-attribute-extensions;">
|
|
|
|
<!-- ===== Element and attribute declarations follow. ===== -->
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.table.name "table"
|
|
ENTITY % tbl.table-titles.mdl "%titles;,"
|
|
ENTITY % tbl.table.mdl "%tbl.table-titles; tgroup+"
|
|
ENTITY % tbl.table.att "
|
|
pgwide %yesorno; #IMPLIED "
|
|
-->
|
|
|
|
<!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
|
|
|
|
<!ATTLIST %tbl.table.name;
|
|
frame (top|bottom|topbot|all|sides|none|
|
|
-dita-use-conref-target) #IMPLIED
|
|
colsep %yesorno; #IMPLIED
|
|
rowsep %yesorno; #IMPLIED
|
|
%tbl.table.att;
|
|
%bodyatt;
|
|
>
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody"
|
|
ENTITY % tbl.tgroup.att ""
|
|
-->
|
|
|
|
<!ELEMENT tgroup (%tbl.tgroup.mdl;) >
|
|
|
|
<!ATTLIST tgroup
|
|
cols NMTOKEN #REQUIRED
|
|
colsep %yesorno; #IMPLIED
|
|
rowsep %yesorno; #IMPLIED
|
|
align (left|right|center|justify|char|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%tbl.tgroup.att;
|
|
>
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.colspec.att ""
|
|
-->
|
|
|
|
<!ELEMENT colspec EMPTY >
|
|
|
|
<!ATTLIST colspec
|
|
colnum NMTOKEN #IMPLIED
|
|
colname NMTOKEN #IMPLIED
|
|
colwidth CDATA #IMPLIED
|
|
colsep %yesorno; #IMPLIED
|
|
rowsep %yesorno; #IMPLIED
|
|
align (left|right|center|justify|char|
|
|
-dita-use-conref-target) #IMPLIED
|
|
char CDATA #IMPLIED
|
|
charoff NMTOKEN #IMPLIED
|
|
%tbl.colspec.att;
|
|
>
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.thead.att ""
|
|
-->
|
|
|
|
<!ELEMENT thead ((%row;)+)>
|
|
|
|
<!ATTLIST thead
|
|
valign (top|middle|bottom|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%tbl.thead.att;
|
|
>
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.tbody.att ""
|
|
-->
|
|
|
|
<!ELEMENT tbody (%row;)+>
|
|
|
|
<!ATTLIST tbody
|
|
valign (top|middle|bottom|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%tbl.tbody.att;
|
|
>
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % tbl.row.mdl "entry+"
|
|
ENTITY % tbl.row.att ""
|
|
-->
|
|
|
|
<!ELEMENT row (%tbl.row.mdl;)>
|
|
|
|
<!ATTLIST row
|
|
rowsep %yesorno; #IMPLIED
|
|
valign (top|middle|bottom|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%tbl.row.att;
|
|
>
|
|
|
|
|
|
<!--
|
|
Default declarations previously defined in this entity and
|
|
referenced below include:
|
|
ENTITY % paracon "#PCDATA"
|
|
ENTITY % tbl.entry.mdl "(%paracon;)*"
|
|
ENTITY % tbl.entry.att ""
|
|
-->
|
|
|
|
<!ELEMENT entry %tbl.entry.mdl;>
|
|
|
|
<!ATTLIST entry
|
|
colname NMTOKEN #IMPLIED
|
|
namest NMTOKEN #IMPLIED
|
|
nameend NMTOKEN #IMPLIED
|
|
morerows NMTOKEN #IMPLIED
|
|
colsep %yesorno; #IMPLIED
|
|
rowsep %yesorno; #IMPLIED
|
|
align (left|right|center|justify|char|
|
|
-dita-use-conref-target) #IMPLIED
|
|
char CDATA #IMPLIED
|
|
charoff NMTOKEN #IMPLIED
|
|
valign (top|middle|bottom|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%tbl.entry.att;
|
|
>
|
|
|
|
|
|
<!-- ============================================================= -->
|
|
<!-- DITA BEHAVIOR ATTRIBUTES -->
|
|
<!-- ============================================================= -->
|
|
|
|
<!ATTLIST %tbl.table.name;
|
|
rowheader (firstcol | norowheader |
|
|
-dita-use-conref-target) #IMPLIED
|
|
scale (50|60|70|80|90|100|110|120|140|160|180|200|
|
|
-dita-use-conref-target) #IMPLIED
|
|
%univ-atts;
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST tgroup
|
|
%univ-atts;
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST thead
|
|
%univ-atts;
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST tbody
|
|
%univ-atts;
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST row
|
|
%univ-atts;
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST entry
|
|
%id-atts;
|
|
%localization-atts;
|
|
rev CDATA #IMPLIED
|
|
outputclass CDATA #IMPLIED>
|
|
<!ATTLIST colspec
|
|
%id-atts;
|
|
%localization-atts;>
|
|
|
|
<!-- ============================================================= -->
|
|
<!-- DITA SPECIALIZATION ATTRIBUTE DECLARATIONS -->
|
|
<!-- ============================================================= -->
|
|
|
|
<!ATTLIST table %global-atts; class CDATA "- topic/table " >
|
|
<!ATTLIST tgroup %global-atts; class CDATA "- topic/tgroup " >
|
|
<!ATTLIST colspec %global-atts; class CDATA "- topic/colspec " >
|
|
<!ATTLIST thead %global-atts; class CDATA "- topic/thead " >
|
|
<!ATTLIST tbody %global-atts; class CDATA "- topic/tbody " >
|
|
<!ATTLIST row %global-atts; class CDATA "- topic/row " >
|
|
<!ATTLIST entry %global-atts; class CDATA "- topic/entry " >
|
|
|
|
|
|
<!-- ================== End XML Exchange Table Model ============= -->
|