Previous | Contents | Index |
Specifies special formatting for a table.
<TABLE_ATTRIBUTES> (keyword-1
[\keyword-2]...[\keyword-5])
keyword-1...keyword-5
Specifies at least one and as many as five keywords to indicate special formatting for the table. These keywords are listed in the following table.
Keyword | Description |
---|---|
CONTROLLED |
Overrides the settings created by using the
<SET_TABLE_ROW_BREAK_DEFAULT> tag. Also, indicates, for a
multipage table, that the table page breaking is under explicit control
of <TABLE_ROW_BREAK> tags. When you use the CONTROLLED keyword,
it enables the <TABLE_ROW_BREAK>(FIRST) and
<TABLE_ROW_BREAK>(LAST) tags to indicate the first and last
allowable page break points. Between these two tags, the table may be
broken between any two <TABLE_ROW> tags.
You cannot use this keyword with the KEEP keyword. CONTROLLED has no effect for Bookreader output. |
KEEP |
Indicates that the table must be kept on one page. If there is not
enough room on the current page, a new page is output. If the table
exceeds the length of a page, the text formatter issues a warning
message and not all the table is output.
You cannot use this keyword with the MULTIPAGE keyword. KEEP has no effect for Bookreader output. |
MAXIMUM | Indicates that the text of the table is adjusted to a smaller point size in order to fit within the left and right margins of the page. If you do not specify this argument, and if a table is determined during text formatting to be too wide, the text formatter will adjust the size of the text automatically. |
MULTIPAGE |
Indicates that the table is either of the following:
This is the default. If you specify MULTIPAGE, you can use the <TABLE_ROW_BREAK> tag to control page breaks. When a formal table is continued, the table number and caption (with the text "Cont'd") and column headings are automatically repeated on subsequent pages. When an informal table is continued, the column headings are repeated on subsequent pages. MULTIPAGE has no effect for Bookreader output; however, a long table in a pop-up window repeats the column headings after you scroll past each Bookreader page. You cannot use this keyword with the KEEP keyword. |
SINGLE_SPACED | Specifies that the rows in the table be single-spaced; that is, there will be no more vertical space between lines of different table rows than there are between lines within the same table row. |
WIDE |
Specifies that the width of the table exceeds the document's default
width for text. Depending on the doctype, this argument is interpreted
as follows:
|
- <TABLE>
- <TABLE_SETUP>
- Valid only in the context of a <TABLE> tag.
- Must precede the <TABLE_SETUP> tag.
- WIDE and MAXIMUM might not produce error-free output for monospaced output devices.
The <TABLE_ATTRIBUTES> tag specifies special formatting for a table.
The following example uses the KEEP and WIDE attributes.
#1 |
---|
<TABLE>(Equivalence Names for Default Process Logical Names\equiv_names_proc_tab) <TABLE_ATTRIBUTES>(WIDE\KEEP) <TABLE_SETUP>(4\8\10\12) <TABLE_HEADS>(Logical Name\Interactive\Batch\Command Procedure) <TABLE_ROW>(SYS$COMMAND\Terminal\Disk\Terminal) <TABLE_ROW>(SYS$DISK\Disk\Disk\Disk) <TABLE_ROW>(SYS$INPUT\Terminal\Disk\Disk) <TABLE_ROW>(SYS$ERROR\Terminal\Log file\Terminal) <TABLE_ROW>(SYS$LOGIN\Directory\Directory\Directory) <TABLE_ROW>(SYS$NET\\\) <TABLE_ROW>(SYS$OUTPUT\Terminal\Log file\Terminal) <TABLE_ROW>(SYS$SCRATCH\Directory\Directory\Directory) <TABLE_ROW>(TT\Terminal\Null device\Terminal) <ENDTABLE> |
This example produces the following output:
Table n--n: Equivalence Names for Default Process Logical Names
Logical Name Interactive Batch Command Procedure SYS$COMMAND Terminal Disk Terminal SYS$DISK Disk Disk Disk SYS$INPUT Terminal Disk Disk SYS$ERROR Terminal Log file Terminal SYS$LOGIN Directory Directory Directory SYS$NET SYS$OUTPUT Terminal Log file Terminal SYS$SCRATCH Directory Directory Directory TT Terminal Null device Terminal
#2 |
---|
|
The same example, but with the MAXIMUM attribute, produces the following output:
Table n--n: Equivalence Names for Default Process Logical Names
Logical Name Interactive Batch Command Procedure SYS$COMMAND Terminal Disk Terminal SYS$DISK Disk Disk Disk SYS$INPUT Terminal Disk Disk SYS$ERROR Terminal Log file Terminal SYS$LOGIN Directory Directory Directory SYS$NET SYS$OUTPUT Terminal Log file Terminal SYS$SCRATCH Directory Directory Directory TT Terminal Null device Terminal
#3 |
---|
|
The same example, but with the SINGLE_SPACED attribute, produces the following output:
Table n--n: Equivalence Names for Default Process Logical Names
Logical Name Interactive Batch Command Procedure SYS$COMMAND Terminal Disk Terminal SYS$DISK Disk Disk Disk SYS$INPUT Terminal Disk Disk SYS$ERROR Terminal Log file Terminal SYS$LOGIN Directory Directory Directory SYS$NET SYS$OUTPUT Terminal Log file Terminal SYS$SCRATCH Directory Directory Directory TT Terminal Null device Terminal The following example shows how to code a two-column table using the CONTROLLED attribute to the <TABLE_ATTRIBUTES> tag, along with the <TABLE_ROW_BREAK>(FIRST) and <TABLE_ROW_BREAK>(LAST) tags, to override the settings created with the <SET_TABLE_ROW_BREAK_DEFAULT> tag.
Suppose this table is the first of five tables in a single SDML file. You have set the table row break default to be 3 (using the <SET_TABLE_ROW_BREAK_DEFAULT> tag). Only for this first table, moreover, you want to explicitly control the table page breaks (instead of the table breaks being allowed only after the third table row), so you allow them after the eighth and before the fourteenth rows using the <TABLE_ATTRIBUTES>(CONTROLLED), <TABLE_ROW_BREAK>(FIRST), and <TABLE_ROW_BREAK>(LAST) tags. After this table ends, the <SET_TABLE_ROW_BREAK_DEFAULT>(3) tag takes effect again for the next four tables.
#4 |
---|
<SET_TABLE_ROW_BREAK_DEFAULT>(3) <TABLE>(Rules for Determining Expression Modes\express_modes_tab) <TABLE_ATTRIBUTES>(MULTIPAGE\CONTROLLED) <TABLE_SETUP>(2\43) <TABLE_HEADS>(Expression\Value Type) <TABLE_ROW>(Integer value\Integer) <TABLE_ROW>(String value\String) <TABLE_ROW>(Integer lexical function\Integer) <TABLE_ROW>(String lexical function\String) <TABLE_ROW>(Integer symbol\Integer) <TABLE_ROW>(String symbol\String) <TABLE_ROW>(Any value .AND. or .OR. any value\Integer) <TABLE_ROW>(Any value\Integer) <COMMENT>(Break after this) <TABLE_ROW_BREAK>(first) <TABLE_ROW>(Any value\Integer) <TABLE_ROW>(Integer value\Integer) <TABLE_ROW>(String value\String) <TABLE_ROW>(Integer lexical function\Integer) <TABLE_ROW>(String lexical function\String) <COMMENT>(Do not break after this) <TABLE_ROW_BREAK>(last) <TABLE_ROW>(Integer symbol\Integer) <TABLE_ROW>(String symbol\String) <TABLE_ROW>(Any value .AND. or .OR. any value\Integer) <TABLE_ROW>(Any value\Integer) <TABLE_ROW>(Any value\Integer) <ENDTABLE> |
Causes a separate file containing a formal table to be included in the SDML input file.
<TABLE_FILE> (
)
- file spec
- logical name
file spec
Specifies the file specification of the file to be included.logical name
Specifies the logical name of the file to be included. You can define a logical name in your profile using an <INCLUDES_FILE> tag. If you do not define the logical name in the profile with the <INCLUDES_FILE> tag, be sure you define the logical name elsewhere before processing the file with DECdocument.
- <TABLE>
Valid only in the context of a <TABLE> tag.
The <TABLE_FILE> tag causes a separate file containing a formal table to be included in the SDML input file. (It is identical in action to the <INCLUDE> tag.) The included file should be an SDML file containing a completely coded table.By keeping a table in a separate SDML file, you can include the table in more than one document, or in chapters of the same document, without having to reproduce the code. In each location, the table is given a different number.
The following example shows how to use the <TABLE_FILE> tag to include a wide table that is contained in a separate file, called STANDARD_FILETYPES.SDML.Note that the included table file will not process individually. It will only process when you include it in another SDML file that specifies the <TABLE> and <ENDTABLE> tags.
#1 |
---|
<TABLE>(Default VMS File Types\stand_filetypes_tab) <TABLE_ATTRIBUTES>(wide) <TABLE_FILE>(standard_filetypes.sdml) <ENDTABLE> |
In the following example, the file ENDLIST.SDML contains all the tags required for the table.
#2 |
---|
<REFERENCE>(command_sum_tab) lists all the commands. <TABLE_FILE>(endlist.sdml) |
The tags in ENDLIST.SDML are:
<TABLE>(Command Summary\command_sum_tab) <TABLE_ATTRIBUTES>(Multipage) <TABLE_SETUP>(2\18) <TABLE_HEADS>(Command\Description) <TABLE_ROW>(...) . . . <ENDTABLE>This example assumes that the table is being used in only one document. Placing the table in a separate file allows you to process it individually, or in the context of the file in which it occurs.
Specifies column headings for each column in the table.
<TABLE_HEADS> (col heading-1
[\col heading-2...[\col heading-9]])
col heading
Specifies the heading for each column; the first argument is the heading for the first column. You can specify up to nine column headings.
- <RULE>
- <SPAN>
- <TABLE>
- Valid only in the context of a <TABLE> tag.
- Invalid in the context of a <TABLE_UNIT> tag.
The <TABLE_HEADS> tag specifies column headings for each column in the table. It is not required in a table tags sequence, however.A heading can be any length, and is automatically formatted correctly on one or more lines.
Within tables, you can use the <TABLE_HEADS> tag to specify multipage headings for a table. You can also use it to place new headings in the middle of a table. You cannot use the tag, however, in a table unit.
The following example shows how to use the <TABLE_HEADS> tag to produce a two-column table. Notice that you can use the <TABLE_HEADS> tag both at the top of the table to establish the headings, and also in the middle of the table to change the headings.
<TABLE>(Rules for Determining Expression Modes\express_modes_tab) <TABLE_ATTRIBUTES>(WIDE\MULTIPAGE) <TABLE_SETUP>(2\15) <TABLE_HEADS>(Expression\Value Type) <TABLE_ROW>(Integer value\Integer) <TABLE_ROW>(String value\String) <TABLE_HEADS>(Value Type\Expression) <TABLE_ROW>(Integer\Integer lexical function) <TABLE_ROW>(String\String lexical function) <TABLE_ROW>(Integer\Integer symbol) <TABLE_ROW>(String\String symbol) <ENDTABLE> |
This example produces the following output:
Table n--n: Rules for Determining Expression Modes
Expression Value Type Integer value Integer String value String Value Type Expression Integer Integer lexical function String String lexical function Integer Integer symbol String String symbol
Begins a key or legend for a table.
<TABLE_KEY>
None.
- <FOOTNOTE>
- <TABLE>
- <TABLE_KEYREF>
- <TABLE_SETUP>
Valid only in the context of a <TABLE> tag.Must appear immediately after the <TABLE_SETUP> tag, either before or after any <FOOTNOTE> tags.
When you use a <TABLE_KEY> tag, the number of possible footnotes for the same table is reduced from 12 to 11.
The tags that you can use between the <TABLE_KEY> and <ENDTABLE_KEY> tags are restricted to the <P>, <LIST>, and <EMPHASIS> tags. For example, you cannot use a <TABLE_ROW> tag within the table key.
Invalid in a nested table (a table within a table). The <TABLE_KEY> tag must follow the <TABLE_SETUP> tag for the outermost table.
<ENDTABLE_KEY>
The <TABLE_KEY> tag begins a key or legend for a table. Abbreviations or special terms are often used in a table, either in the column headings or in the entries of the table. The table may then need a key or legend printed below it to explain the special terms. The <TABLE_KEY> tag begins such a table key.A table key differs from a table footnote in that the table key is not numbered and does not refer to a callout in the table. You can declare only one table key for a table, whereas up to 12 footnotes are possible for a table that does not include a table key, or up to 11 footnotes for a table that does include a table key.
Declare the table key immediately after the <TABLE_SETUP> tag that begins the table and before the first tag that begins the table rows. This placement is identical to the placement for footnotes in a table. If footnotes are also present, they either can precede or follow the table key declaration.
Use the <TABLE_KEYREF> tag to specify where you want the table key to be output. When the table is a multipage table and if you want the table key printed at the foot of any or all portions of the table, place the <TABLE_KEYREF> tag anywhere in the argument list to the <TABLE_HEADS> tag. For a book you create for Bookreader, the table key will always appear at the end of the table.
If you want the table key to be printed only on specified pages of a multipage table, place the <TABLE_KEYREF> tag in any <TABLE_ROW> tag that corresponds to the different pages. You may have to print your table before you can determine which <TABLE_ROW> tags correspond to which pages.
The following example shows how to use the <TABLE_KEY> tag.
<table>(Compatability of Lock Modes\lock_tab) <table_attributes>(wide\keep) <table_setup>(7\10\5\5\5\5\5) <table_key> <emphasis>(Key to Lock Modes\bold) <list>(simple) <le>NL---Null lock <le>CR---Concurrent read <le>CW---Concurrent write <le>PR---Protected read <le>PW---Protected write <le>EX---Exclusive lock <ENDLIST> <endtable_key> <table_heads>(Mode of Requested\ <span>(5)Mode of Currently Granted Locks<rule>) <table_heads>(Lock<TABLE_KEYREF>\NL\CR\CW\PR\PW\EX) <table_row>(NL\Yes\Yes\Yes\Yes\Yes\Yes) <table_row>(CR\Yes\Yes\Yes\Yes\Yes\No) <table_row>(CW\Yes\Yes\Yes\No\No\No) <table_row>(PR\Yes\Yes\No\Yes\No\No) <table_row>(PW\Yes\Yes\No\No\No\No) <table_row>(EX\Yes\No\No\No\No\No) <endtable> |
This example produces the following output:
Table n--n: Compatibility of Lock Modes
Mode of Requested Mode of Currently Granted Locks Lock NL CR CW PR PW EX NL Yes Yes Yes Yes Yes Yes CR Yes Yes Yes Yes Yes No CW Yes Yes Yes No No No PR Yes Yes No Yes No No PW Yes Yes No No No No EX Yes No No No No No
Key to Lock Modes
- NL---Null lock
- CR---Concurrent read
- CW---Concurrent write
- PR---Protected read
- PW---Protected write
- EX---Exclusive lock
Previous | Next | Contents | Index |