12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019 |
- <!-- $XConsortium: ch10.sgm /main/4 1996/10/11 09:24:36 cdedoc $ -->
- <!-- (c) Copyright 1995 Digital Equipment Corporation. -->
- <!-- (c) Copyright 1995 Hewlett-Packard Company. -->
- <!-- (c) Copyright 1995 International Business Machines Corp. -->
- <!-- (c) Copyright 1995 Sun Microsystems, Inc. -->
- <!-- (c) Copyright 1995 Novell, Inc. -->
- <!-- (c) Copyright 1995 FUJITSU LIMITED. -->
- <!-- (c) Copyright 1995 Hitachi. -->
- <chapter id="infoapg.div.10">
- <title id="nWGeMZBc9og24aK">Using Architectural Forms</title>
- <indexterm><primary>document type definition</primary>
- <secondary>applying architectural forms to</secondary></indexterm>
- <para>
- Your SGML documents conform to a particular document type definition
- (DTD). To make the Information Manager understand how to treat the
- elements defined in your DTD, you apply attributes to basic elements
- in the DTD. These attributes correspond to Information Manager
- architectural forms, which are semantics that Information Manager
- interprets to build documents into an on-line library.
- </para>
- <note>
- <para>
- The examples in this section are from version 2.2.1 of the DocBook DTD.
- </para>
- </note>
- <para>
- Information Manager architectural forms are based on the
- organizational model of documentation in the Information Manager.
- The Information Manager groups an information library into bookcases
- containing books with sections whose titles are arranged in a hypertext
- table of contents. It includes access to specific elements such as tables
- and graphics.
- </para>
- <para>
- Bookcases, books, sections, titles, links, tables, and graphics,
- are examples of important elements that the browser must identify
- to manage the information. Information Manager provides architectural
- forms that correspond to each of these types of information.
- To identify these pieces for the Information Manager,
- you apply the corresponding architectural forms to your DTD.
- Specifically, you add attributes to each element that has characteristics
- you want to identify. To make it easier to maintain your DTD,
- use parameter entity references provided by the Information Manager.
- </para>
- <!--)))))))))))))))))))))))))))))))))))))))))))))))))))))))-->
- <sect1>
- <title id="VyBTVcBfQJ9X3cS">Using Parameter Entity References</title>
- <para>The Information Manager provides parameter entity references
- as a quick (and recommended) way to use Information Manager
- architectural forms. The entity names for Information Manager
- architectural forms are stored in
- <filename>/usr/dt/infolib/<lang>/SGML/dtinfo.af</filename>.
- By using parameter entity references in your attributes list
- rather than entering complete attributes, you'll be able to take
- advantage of new features of the Information Manager,
- while minimizing changes to your DTD. For example:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- To apply the complete attribute:
- </para>
- <literallayout>
- <!ELEMENT caption - - ((%inlinechar.gp;)+) >
- <!ATTLIST caption
- %commonatts;
- DTINFO.TITLE CDATA #FIXED “#CONTENT”
- >
- </literallayout>
- </listitem>
- <listitem><para>To use the parameter entity reference:</para>
- <literallayout>
- <!ELEMENT caption - - ((%inlinechar.gp;)+) >
- <!ATTLIST caption
- %commonatts;
- %DTINFO.Title; “#CONTENT”
- >
- </literallayout>
- </listitem>
- </itemizedlist>
- <para>
- See <link linkend="EzilaaBwXng24aK">Applying Architectural Forms</link>
- and <link linkend="fyBTVcBfQJ9X3cS">Description of Information Manager
- Architectural Forms</link> for more information on editing your DTD.
- </para>
- </sect1>
- <!--)))))))))))))))))))))))))))))))))))))))))))-->
- <sect1>
- <title id="fyBTVcBfQJ9X3cS">Description of DTINFO Architectural Forms</title>
- <para>
- The descriptions of architectural forms identify related forms,
- forms that are commonly used in conjunction with the architectural
- form being described. A related form is identified in the documentation
- using its corresponding attribute name. This section discusses:
- </para>
- <itemizedlist>
- <listitem><para><link linkend="orilaaBwXng24aK">Section Forms</link></para>
- </listitem>
- <listitem><para><link linkend="KtilaaBwXng24aK">Value Form</link></para>
- </listitem>
- <listitem><para><link linkend="fsilaaBwXng24aK">Scope Forms</link></para>
- </listitem>
- <listitem><para><link linkend="nyilaaBwXng24aK">Hypertext Forms</link></para>
- </listitem>
- <listitem><para><link linkend="draW.aB80og24aK">Style Form</link></para>
- </listitem>
- </itemizedlist>
- <para>
- Although it is easier to create tables of contents, bookcase
- specifications and style sheets from scratch, you can apply Information
- Manager architectural forms to existing bookcase, style sheet,
- and table of contents DTDs. For more information see Bookcase Forms,
- Style Sheet Forms, and <link linkend="S3CTVcBfQJ9X3cS">Table of Contents
- Forms</link>.
- </para>
- <note>
- <para>
- These architectural forms must be applied before most
- <command>dtinfogen</command> subcommands can be used.
- </para>
- </note>
- <!--)))))))))))))))))))))))))))))))))))))))))-->
- <sect2>
- <title id="QnDu4iB6dmg24aK">Understanding Values</title>
- <para>For Information Manager architectural forms that take data values,
- a simple functional language provides a mechanism to assemble combinations
- of element content, attribute values, and literals. The arguments
- are defined in the table
- <link linkend="UtilaaBwXng24aK">Syntax for Creating Values</link>.
- </para>
- <table>
- <Title id="UtilaaBwXng24aK">Syntax for Creating Values</title>
- <tgroup cols="2" colsep="0" rowsep="0">
- <colspec colwidth="156*">
- <colspec colwidth="372*">
- <tbody>
- <row>
- <entry align="left" valign="top"><literal>Syntax</literal></entry>
- <entry align="left" valign="top"><literal>Meaning</literal>
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">attr()</entry>
- <entry align="left" valign="top">attr() returns the value of the attribute
- name used as the argument. IMPLIED attributes return an empty string.
- attr() references attributes on the current element only.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">concat()</entry>
- <entry align="left" valign="top">concat() concatenates string arguments
- (literals, contents of elements, attribute values, or values of the other
- functions).
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">firstof()</entry>
- <entry align="left" valign="top">firstof() returns the first non-empty
- string in its arguments. It chooses the value from the order of
- possibilities defined by its arguments.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top"><replaceable>element name</replaceable>
- </entry>
- <entry align="left" valign="top"><replaceable>element name</replaceable>
- uses, as the value, the name of an element that is a member of the current
- element's content model.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top"><replaceable>literal string</replaceable>
- </entry>
- <entry align="left" valign="top"><replaceable>literal string</replaceable>
- uses either a pair of '...' or "..." enclosing quotes to signify a literal
- string
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">#CONTENT</entry>
- <entry align="left" valign="top">#CONTENT uses all of the current element's
- content as the value.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <note>
- <para>
- You can combine the syntax explained in the table to create the
- value you want, and you can add literal strings as needed.
- </para>
- </note>
- <para>
- Examples of specifying values for architectural forms are:
- </para>
- <literallayout>
- DTINFO.Title CDATA #FIXED
- "concat( attr(Label), RefTitle, ManVolNum )"
- DTINFO.Graphic CDATA #FIXED
- "firstof( attr(Fileref), attr(Other), #CONTENT )"
- </literallayout>
- </sect2>
- <!-- ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -->
- <sect2>
- <title id="orilaaBwXng24aK">Section Forms</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>section forms</secondary></indexterm>
- <para>
- For the Information Manager to understand the structure of your SGML
- files, you must apply section architectural forms. The use and meaning
- of a form's value depends on the type of form it is. For example, when
- specified for a chapter title, the value is displayed in the hypertext
- table of contents. For <systemitem>DTINFO.Graphic</systemitem>, the
- value is the name of the file containing the graphic data. These
- relationships are described in the table <link
- linkend="GiaW.aB80og24aK">Meaning of the Form Values</link>.</para>
- <table>
- <title id="GiaW.aB80og24aK">Meaning of the Form Values</title>
- <tgroup cols="2" colsep="0" rowsep="0">
- <colspec colwidth="160*">
- <colspec colwidth="368*">
- <tbody>
- <row>
- <entry align="left" valign="top"><literal>Section Form</literal></entry>
- <entry align="left" valign="top"><literal>Meaning of Value Form,
- When Applied</literal>
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">DTINFO.Section</entry>
- <entry align="left" valign="top">The value of a section is what would be
- displayed in the Information Manager Reading window.
- The default is #CONTENT.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">DTINFO.Title</entry>
- <entry align="left" valign="top">The value of a title for
- DTINFO.Section is displayed in the Information Manager Book List.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">DTINFO.Graphic</entry>
- <entry align="left" valign="top">The value of a graphic is the file name
- containing the graphical data. This value can also be derived from
- entity references.
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">DTINFO.Ignore</entry>
- <entry align="left" valign="top">This information will not be stored
- in the database or in the FulText Index (so it won't be displayed).
- </entry>
- </row>
- <row>
- <entry align="left" valign="top">DTINFO.ShortTitle</entry>
- <entry align="left" valign="top">The value of a shorttitle is the
- text used in certain places in the Reading window where a full title
- might be truncated.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <variablelist>
- <varlistentry>
- <term><systemitem>DTINFO.Section</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Section</systemitem> form to container
- elements that separate pieces of information such as chapters.
- Use <systemitem>DTINFO.Section</systemitem> to define which elements
- you want displayed to readers as a unit of information in a reading window
- of the Information Manager. <command>dtinfogen</command> can derive
- the hierarchy by containment using <systemitem>DTINFO.Section</systemitem>.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Section</systemitem>
- </para>
- <para>
- Attribute template:
- <systemitem>DTINFO.Section CDATA FIXED “#CONTENT”</systemitem>
- </para>
- <para>
- Related Forms:
- <systemitem>DTINFO.ID</systemitem> (Required), <systemitem>DTINFO.Scope</systemitem>, <systemitem>DTINFO.ShortTitle</systemitem>, <systemitem>DTINFO.Style</systemitem>, <systemitem>DTINFO.Title</systemitem> (Required), <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Example:
- </para>
- <literallayout>
- <!ELEMENT Preface - - (DocInfo?, Title, TitleAbbrev?, (%sect1.gp;)) >
- <!ATTLIST Preface
- %commonatts;
- %DTINFO.Section; “#CONTENT”
- %DTINFO.Style; “sty1”
- %DTINFO.Title; “#CONTENT”
- %DTINFO.ID; “attr(id)”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry><term><systemitem>DTINFO.Title</systemitem></term>
- <listitem>
- <para>
- You typically apply <systemitem>DTINFO.Title</systemitem>
- to any type of title, including chapter titles, headings, captions,
- figure titles, table titles, and example titles.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Title</systemitem>
- </para>
- <para>
- Attribute template: <systemitem>DTINFO.Title CDATA #FIXED</systemitem>
- </para>
- <para>
- Related Forms: <systemitem>DTINFO.Scope</systemitem>, <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Example:
- </para>
- <literallayout>
- <!ELEMENT RefMeta - - (RefEntryTitle, ManVolNum?,RefMiscInfo*) >
- <!ATTLIST RefMeta
- %commonatts;
- %DTINFO.Title; #“CONTENT”
- %DTINFO.Value; “concat( RefEntryTitle, ManVolNum)”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><systemitem>DTINFO.ShortTitle</systemitem></term>
- <listitem>
- <para>
- If your existing DTD has an abbreviated form of a title, apply the
- <systemitem>DTINFO.ShortTitle</systemitem> to that element. The content
- of this element is never displayed in a reading window, but may appear
- as a list item in a dialog. The content does not appear in the FulText
- index.</para>
- <para>
- Entity name: <systemitem>DTINFO.ShortTitle</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.ShortTitle CDATA #FIXED</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT TitleAbbrev - - ((%inlinechar.gp;)+) >
- <!ATTLIST TitleAbbrev
- %commonatts;
- %DTINFO.ShortTitle; “#CONTENT”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><systemitem>DTINFO.Graphic</systemitem></term>
- <listitem>
- <para>
- Apply <systemitem>DTINFO.Graphic</systemitem> to elements that designate graphics, mathematical equations, or certain types of tables.</para>
- <para>
- Entity name: <systemitem>DTINFO.Graphic</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Graphic CDATA #FIXED</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Scope</systemitem>, <systemitem>DTINFO.ID</systemitem>.</para>
- <para>
- Example:
- </para>
- <literallayout>
- <!ELEMENT Graphic - - CDATA>
- <!ATTLIST Graphic
- Entityref ENTITY #IMPLIED
- Fileref CDATA #IMPLIED
- Format NOTATION
- %notationtypes; #IMPLIED
- Id ID #IMPLIED
- %DTINFO.Graphic; “#CONTENT”
- %DTINFO.ID; “:attr( ID )”
- %DTINFO.Scope.Graphic;
- ></literallayout>
- </listitem>
- </varlistentry>
- <!-- ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((-->
- <VARLISTENTRY>
- <Term><SystemItem>DTINFO.Table</SystemItem></Term>
- <listitem>
- <para>
- <comment>We may not support DTINFO.Table - so it may be commented
- out in future documentation.</comment>
- Elements that designate SGML-encoded tables according to the CALS table
- model should receive the <SystemItem>DTINFO.Table</SystemItem> attribute.
- Otherwise they should receive <SystemItem>DTINFO.Graphic</SystemItem>.
- </para>
- <para>
- Entity name: <SystemItem>DTINFO.Table</SystemItem></para>
- <para>
- Attribute template: <SystemItem>DTINFO.Table CDATA #FIXED</SystemItem></para>
- <para>
- Related Forms: <SystemItem>Scope.Table</SystemItem>.</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT InformalTable - - ((%tblcontent.gp;)) -(Table|InformalTable)>
- <!ATTLIST InformalTable
- %commonatts;
- Colsep %yesorno; #IMPLIED
- Frame (Top|Bottom|Topbot|All|Sides|None) #IMPLIED
- Orient (Port | Land) #IMPLIED
- Pgwide %yesorno; #IMPLIED
- Rowsep %yesorno; #IMPLIED
- Tabstyle NMTOKEN #IMPLIED
- %DTINFO.Table; “#CONTENT”
- %DTINFO.Scope.Table;
- >
- </LITERALLAYOUT>
- </ListItem>
- </VarListEntry>
- <varlistentry>
- <term><systemitem>DTINFO.Ignore</systemitem></term>
- <listitem>
- <para>
- Apply <systemitem>DTINFO.Ignore</systemitem> to elements that contain
- information you do not want to have displayed. If the elements contain
- useful hypertext information, it will be used during the build process.
- For example, you can provide a <systemitem>DTINFO.Value</systemitem>
- that is passed up and used to create a hypertext value.</para>
- <para>
- Entity name: <systemitem>DTINFO.Ignore</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Ignore CDATA #FIXED</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT InternalComment - - ((%inlinechar.gp;)+)>
- <!ATTLIST InternalComment
- %DTINFO.Ignore; “#CONTENT”
- %DTINFO.Value; “#CONTENT”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- <!--((((((((((((((((((((((((((((((((((((((((((((((((((((((-->
- <sect2>
- <title id="KtilaaBwXng24aK">Value Form</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>section value form</secondary></indexterm>
- <para>
- The <systemitem>DTINFO.Value</systemitem> form defines the return value
- of an architectural form. <systemitem>DTINFO.Value</systemitem> returns
- a value to a higher-level element. For example, assume element
- <replaceable>foo</replaceable> has a content model of
- <replaceable>a?</replaceable>, <replaceable>b</replaceable>,
- and <replaceable>foo</replaceable> uses the architectural form
- <systemitem>DTINFO.Title firstof “(a,b)”</systemitem>.
- The value of <replaceable>a</replaceable> might be constructed
- by concatenating its <systemitem>Label</systemitem> attribute
- and its content. This construction can be processed and given
- to <replaceable>foo</replaceable> using <systemitem>DTINFO.Value</systemitem>.
- Only one <systemitem>DTINFO.Value</systemitem> can be placed on
- any element.</para>
- <para>
- The value architectural form is:</para>
- <variablelist>
- <varlistentry>
- <term><systemitem>DTINFO.Value</systemitem></term>
- <listitem>
- <para>
- The <systemitem>DTINFO.Value</systemitem> attribute specifies a
- return value for an architectural form. The value for
- <systemitem>DTINFO.Value</systemitem> is a functional language
- that creates a stream to be used as a value. The value takes the
- form of an implied concatenation. The arguments are defined in the
- table <link linkend="UtilaaBwXng24aK">Syntax for Referencing Values</link>.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Value CDATA #FIXED “ <replaceable>Value</replaceable>”</systemitem></para>
- <para>
- Related Forms: All section forms</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT RefMeta - - (RefEntryTitle, ManVolNum?,RefMiscInfo*) >
- <!ATTLIST RefMeta
- %commonatts;
- %DTINFO.Title;
- %DTINFO.Value; “concat( RefEntryTitle,'(`,
- ManVolNum,')')”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- <!--))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))-->
- <sect2>
- <title id="fsilaaBwXng24aK">Scope Forms</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>scope forms</secondary></indexterm>
- <para>
- In the Information Manager, users can define the scope of searches.
- They can tell the browser which books to include in a search, and
- can specify whether to search all components of the books, body text,
- examples, indexes, graphics, tables, titles, or some combination thereof.
- Scope architectural forms determine which elements are included in a
- search scope in the Information Manager. Specifically, they determine
- which scope information is indexed within the FulText index. The scope
- applies to any element contained within an element to which
- <systemitem>DTINFO.Scope</systemitem> has been applied.
- </para>
- <para>
- To apply scope forms to an element, you apply the
- <systemitem>DTINFO.Scope</systemitem> attribute with any of five values.
- If you do not apply a scope form to an element the data has the default
- scope of <systemitem>Body Text</systemitem>.
- </para>
- <para>
- Possible values for <systemitem>DTINFO.Scope</systemitem> include Example,
- Graphic, Index, Table and Title, and are represented by these entities:
- </para>
- <variablelist>
- <varlistentry><term><systemitem>DTINFO.Scope.Example</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Scope</systemitem> attribute with a
- value of <systemitem>Example</systemitem> to elements that contain data
- you want to include in searches that are scoped to include examples.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Scope.Example</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Scope Name #FIXED Example</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT Example - - (Title, TitleAbbrev?, (%para.gp; |
- %list.gp; | %object.gp;)+) >
- <!ATTLIST Example
- %commonatts;
- Label CDATA #IMPLIED
- %DTINFO.Scope.Example;
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><systemitem>DTINFO.Scope.Graphic</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Scope</systemitem> attribute with a
- value of <systemitem>Graphic</systemitem> to elements you want included
- in searches that are scoped to include graphics. The effect of applying
- this architectural form is that any strings contained within certain
- graphic types may be extracted and indexed for searching.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Scope.Graphic</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Scope Name #FIXED Graphic</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Graphic</systemitem>, <systemitem>DTINFO.ID</systemitem>, <systemitem>DTINFO.Value</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT Graphic - - CDATA>
- <!ATTLIST Graphic
- Entityref ENTITY #IMPLIED
- Fileref CDATA #IMPLIED
- Format NOTATION
- %notationtypes #IMPLIED
- Id ID #IMPLIED
- %DTINFO.Graphic;
- %DTINFO.ID; “attr( Id )”
- %DTINFO.Scope.Graphic;
- %DTINFO.Value; “attr( Fileref )”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry><term><systemitem>DTINFO.Scope.Index</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Scope</systemitem> attribute with a
- value of <systemitem>Index</systemitem> to elements you want included
- in searches that are scoped to include book indexes.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Scope.Index</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Scope Name #FIXED Index</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Section</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT (SetIndex | Index) - - (DocInfo?, (Title,
- TitleAbbrev?)?, (%component.gp;)*, (IndexDiv+ |
- IndexEntry+)) >
- <!ATTLIST (SetIndex | Index)
- %commonatts;
- %DTINFO.Section;
- DTINFO.Scope.Index;
- >
- </literallayout>
- </listitem>
- </varlistentry>
- <varlistentry><term><systemitem>DTINFO.Scope.Table</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Scope</systemitem> attribute with a
- value of <systemitem>Table</systemitem> to elements you want included
- in searches that are scoped to include tables. The effect of this
- architectural form is that any strings contained within the CALS
- SGML table model are indexed for searching.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Scope.Table</systemitem>
- </para>
- <para>
- Attribute template: <systemitem>DTINFO.Scope Name #FIXED Table</systemitem>
- </para>
- <para>
- Related Forms: <systemitem>DTINFO.Table</systemitem>.</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT InformalTable - - ((%tblcontent.gp;)) -(Table|InformalTable)>
- <!ATTLIST InformalTable
- %commonatts;
- Colsep %yesorno; #IMPLIED
- Frame (Top|Bottom|Topbot|All|Sides|None) #IMPLIED
- Orient (Port | Land) #IMPLIED
- Pgwide %yesorno; #IMPLIED
- Rowsep %yesorno; #IMPLIED
- Tabstyle NMTOKEN #IMPLIED
- %DTINFO.Table;
- %DTINFO.Scope.Table;
- ></literallayout>
- </listitem>
- </varlistentry>
- <varlistentry><term><systemitem>DTINFO.Scope.Title</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.Scope</systemitem> attribute with a
- value of <systemitem>Title</systemitem> to elements you want included
- in searches that are scoped to include titles.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.Scope.Title</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.Scope Name #FIXED Title</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Title</systemitem>,
- <systemitem>DTINFO.Value</systemitem>.</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT RefMeta - - (RefEntryTitle, ManVolNum?, RefMiscInfo*) >
- <!ATTLIST RefMeta
- %commonatts;
- %DTINFO.Title;
- %DTINFO.Scope.Title;
- %DTINFO.Value; “concat( RefEntryTitle, ManVolNum)”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- <!--)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))-->
- <sect2>
- <title id="nyilaaBwXng24aK">Hypertext Forms</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>location forms</secondary></indexterm>
- <para>
- The attributes corresponding to hypertext architectural forms
- are <systemitem>DTINFO.ID</systemitem> and
- <systemitem>DTINFO.IDREF</systemitem>. For information on assigning
- a value for these attributes see the table
- <link linkend="UtilaaBwXng24aK">Syntax for Referencing Values</link>.
- </para>
- <note>
- <para>
- SGML reference concrete syntax specifies that the value
- of <systemitem>DTINFO.ID</systemitem> and
- <systemitem>DTINFO.IDREF</systemitem> must be no more
- than 1024 characters long and must start with an alpha-numeric character.
- </para>
- </note>
- <variablelist>
- <varlistentry><term><systemitem>DTINFO.ID</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.ID</systemitem> attribute to any
- element which specifies the destination of a link.
- </para>
- <para>
- Entity name: <systemitem>DTINFO.ID</systemitem></para>
- <para>
- Attribute template: <systemitem>DTINFO.ID CDATA #FIXED “<replaceable>Value</replaceable>”</systemitem></para>
- <para>
- Related Forms: All</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT Anchor - O EMPTY >
- !ATTLIST Anchor
- Id ID #REQUIRED
- Pagenum CDATA #IMPLIED
- Remap CDATA #IMPLIED
- Role CDATA #IMPLIED
- XRefLabel CDATA #IMPLIED
- %DTINFO.ID; “attr( Id )”
- >
- </literallayout>
- <note>
- <para>
- The value of each <systemitem>DTINFO.ID</systemitem> must be unique.
- </para>
- </note>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><systemitem>DTINFO.IDREF</systemitem></term>
- <listitem>
- <para>
- Apply the <systemitem>DTINFO.IDREF</systemitem> attribute to
- any element that contains data to be used as a hot spot for
- traversing to the location specified as the value for
- <systemitem>DTINFO.IDREF</systemitem>.</para>
- <para>Entity name: <systemitem>DTINFO.IDREF</systemitem>
- </para>
- <para>
- Attribute template: <systemitem>DTINFO.IDREF CDATA #FIXED “<replaceable>Value</replaceable>”</systemitem></para>
- <para>
- Related Forms: All</para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT Link - - ((%inlinechar.gp;)+) >
- <!ATTLIST Link
- Endterm IDREF #IMPLIED
- Linkend IDREF #REQUIRED
- Type CDATA #IMPLIED
- %DTINFO.IDREF; “attr( Linkend )”
- >
- </literallayout>
- <note>
- <para>
- The value of <systemitem>DTINFO.IDREF</systemitem> should be the
- value of an existing <systemitem>DTINFO.ID</systemitem>.
- </para>
- </note>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- <!--))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))-->
- <sect2>
- <title id="draW.aB80og24aK">Style Form</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>style form</secondary></indexterm>
- <para>
- The attribute corresponding to the style architectural form is:
- </para>
- <variablelist>
- <varlistentry>
- <term><systemitem>DTINFO.Style</systemitem></term>
- <listitem>
- <para>
- Apply the Information Manager style architectural form,
- <systemitem>DTINFO.Style</systemitem>, to elements to which you have
- already applied the structural form <systemitem>DTINFO.Section</systemitem>
- and for which you want to override their inherited style sheet.
- <systemitem>DTINFO.Style</systemitem> can be used only for elements
- with <systemitem>DTINFO</systemitem> architectural forms
- <systemitem>Bookcase</systemitem>, <systemitem>Book</systemitem> and
- <systemitem>DTINFO.Section</systemitem>.
- </para>
- <para>
- The value of <systemitem>DTINFO.Style</systemitem> is the name of
- a style sheet (the value of a style sheet's
- <systemitem>DTINFO.ID</systemitem> architectural form) and must
- resolve to a style sheet specified in the bookcase specification document.
- Style sheets are inherited by all subordinate sections unless
- they are overridden with a new one.
- </para>
- <note>
- <para>
- Because the content of <systemitem>DTINFO.Style</systemitem> is a
- string that matches the ID of a stylesheet name (and is not an element)
- it must be quoted twice, as in
- <userinput>%DTINFO.Style; “‘sty1’”</userinput>
- or in the form <userinput>%DTINFO.Style
- “concat(‘sty1’)”</userinput>
- </para>
- </note>
- <para>
- Entity name: <systemitem>DTINFO.Style</systemitem>
- </para>
- <para>
- Attribute template:
- <systemitem>DTINFO.Style CDATA #FIXED “<replaceable>Value</replaceable>”</systemitem></para>
- <para>
- Related Forms: <systemitem>DTINFO.Section</systemitem></para>
- <para>
- Example:</para>
- <literallayout>
- <!ELEMENT Preface - - (DocInfo?, Title, TitleAbbrev?, (%sect1.gp;)) >
- <!ATTLIST Preface
- %commonatts;
- %DTINFO.Section;
- %DTINFO.Style; “‘sty1’”
- >
- </literallayout>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect2>
- </sect1>
- <!--))))))))))))))))))))))))))))))))))))))))))))))))))))))))))-->
- <sect1>
- <title id="EzilaaBwXng24aK">Applying Architectural Forms</title>
- <indexterm><primary>architectural forms</primary>
- <secondary>applying to existing DTD</secondary></indexterm>
- <para>
- Use this procedure to apply architectural forms to your DTD.
- Refer to <link linkend="fyBTVcBfQJ9X3cS">Description of Information
- Manager Architectural Forms</link> for information on when to apply
- architectural forms to an element in your DTD:
- </para>
- <note>
- <para>
- Applying the attributes for architectural forms does not
- invalidate your document instance, nor does it require any
- modifications to your document instance.
- </para>
- </note>
- <orderedlist>
- <listitem>
- <para>
- At the top of your DTD, add the entity declaration and use statement
- for Information Manager architectural forms:</para>
- <literallayout>
- <!ENTITY % DOCBOOK PUBLIC
- “-//Common Desktop Environment//ENTITIES DtInfo Architectural Forms//EN”
- >
- %DOCBOOK;
- </literallayout>
- </listitem>
- <listitem>
- <para>
- Analyze your DTD to understand what you want to display.
- </para>
- </listitem>
- <listitem>
- <para>
- Identify container elements and the corresponding
- <link linkend="orilaaBwXng24aK">section architectural form</link>
- for each. For example, an element for figure captions corresponds
- to the <systemitem>Title</systemitem> form.
- </para>
- </listitem>
- <listitem>
- <para>In the attributes list for the element you are modifying,
- enter the parameter entity reference or complete attribute.
- </para>
- <para>
- To use the parameter entity reference:
- </para>
- <literallayout>
- <!ELEMENT caption - - ((%inlinechar.gp;)+) >
- <!ATTLIST caption
- %commonatts;
- %DTINFO.Title; “#CONTENT”
- >
- </literallayout>
- <para>
- To use the complete attribute:
- </para>
- <literallayout>
- <!ELEMENT caption - - ((%inlinechar.gp;)+) >
- <!ATTLIST caption
- %commonatts;
- DTINFO.Title CDATA #FIXED “#CONTENT”
- >
- </literallayout>
- <note>
- <para>
- Some architectural forms have related, required forms.
- For example, the <systemitem>DTINFO.Section</systemitem>
- form requires an <systemitem>DTINFO.Title</systemitem> and
- an <systemitem>DTINFO.ID</systemitem>.
- See <link linkend="fyBTVcBfQJ9X3cS">Description of Information
- Manager Architectural Forms</link> for details.
- </para>
- </note>
- </listitem>
- <listitem>
- <para>
- For the element you are working with, determine whether to
- apply a <link linkend="nyilaaBwXng24aK">hypertext form</link>:
- </para>
- <literallayout>
- <!ELEMENT Graphic - - CDATA>
- <!ATTLIST Graphic
- Entityref ENTITY #IMPLIED
- Fileref CDATA #IMPLIED
- Format NOTATION
- %notationtypes #IMPLIED
- Id ID #IMPLIED
- %DTINFO.Graphic;
- %DTINFO.ID; “attr( Id )”
- >
- </literallayout>
- <note>
- <para>
- You can build a bookcase after applying a minimum of
- <systemitem>DTINFO.Section</systemitem>,
- <systemitem>DTINFO.Title</systemitem>, and
- <systemitem>DTINFO.ID</systemitem> forms.
- </para>
- </note>
- </listitem>
- <listitem>
- <para>
- For the element you are working with, determine whether to apply a
- <link linkend="KtilaaBwXng24aK">data form</link>:
- </para>
- <literallayout>
- <!ELEMENT Graphic - - CDATA>
- <!ATTLIST Graphic
- Entityref ENTITY #IMPLIED
- Fileref CDATA #IMPLIED
- Format NOTATION
- %notationtypes #IMPLIED
- Id ID #IMPLIED
- %DTINFO.Graphic;
- %DTINFO.ID; “attr( Id )”
- %DTINFO.Value; “attr( Fileref )”
- >
- </literallayout>
- </listitem>
- <listitem>
- <para>
- For the element you are working with, determine whether to apply a
- <link linkend="fsilaaBwXng24aK">scope form</link>:
- </para>
- <literallayout>
- <!ELEMENT Graphic - - CDATA>
- <!ATTLIST Graphic
- Entityref ENTITY #IMPLIED
- Fileref CDATA #IMPLIED
- Format NOTATION
- %notationtypes #IMPLIED
- Id ID #IMPLIED
- %DTINFO.Graphic;
- %DTINFO.Scope.Graphic;
- %DTINFO.ID; “attr( Id )”
- %DTINFO.Value; “attr( Fileref )”
- >
- </literallayout>
- </listitem>
- <listitem>
- <para>
- For elements to which you have applied the
- <systemitem>DTINFO.Section</systemitem> architectural form,
- determine whether to use a style sheet other than the one inherited
- by this section. To use a different style sheet, apply a
- <link linkend="draW.aB80og24aK">style form</link>:
- </para>
- <literallayout>
- <!ELEMENT Preface - - (DocInfo?, Title, TitleAbbrev?, (%sect1.gp;)) >
- <!ATTLIST Preface
- %commonatts;
- %DTINFO.Section;
- %DTINFO.Style; “sty1”
- >
- </literallayout>
- </listitem>
- <listitem>
- <para>
- Repeat steps 4 through 7 for each element which
- requires an architectural form.
- </para>
- </listitem>
- </orderedlist>
- </sect1>
- </chapter>
|