<topicSubjectTable>
In a <topicSubjectTable>, the first column is reserved for references to content. Subsequent columns are reserved for subjects that classify the content, each column supplying the subjects for a different category as identified in the header. The table resembles a traditional relationship table in which the first column identifies the source and the other columns identify the targets, but the relationship reflects the subjects covered by the content rather than linking between documents.
note
Content models
See appendix for information about this element in OASIS document type shells.
Inheritance
+ map/reltable classify-d/topicSubjectTable
Example
The topic subject table below classifies topics with goals for retrieval and with operating systems for filtering. The map makes use of definitions in a subject scheme map, defined separately.
Subject scheme map
<subjectScheme> <hasKind> <subjectdef href="goalType.dita" keys="goal"> <subjectdef href="performanceGoal.dita" keys="performance"/> <subjectdef href="reliabilityGoal.dita" keys="reliability"/> </subjectdef> <subjectdef href="operatingSystem.dita" keys="os"> <subjectdef href="linuxOS.dita" keys="linux"/> <subjectdef href="unixOS.dita" keys="unix"/> <subjectdef href="windowsOS.dita" keys="windows"/> </subjectdef> </hasKind> </subjectScheme>
Topic subject table
The following <topicSubjectTable> classifies several topics according to subjects in the previous map. As with any <topicSubjectTable>, the first column is used to specify topics. In this specific example, the second column is used to specify a goal, based on the "goal" subject in the header. The third column is used to specify an operating system. Based on those definitions, the following classifications are made by this table:
- The topics "Configuring cron for efficient startup" and "Allocating raw storage" are each classified by the goal of "performance"; in addition, they are classified by the operating systems "linux" and "unix".
- The topics "Analyzing web logs for service issues" and "Detecting denial-of-service attacks" are each classified by the goal of "reliability"; in addition, they are classified by the operating systems "linux", "unix", and "windows".
- No relationship is defined between subjects in the table, meaning that this table does not define any relationship between the goal of "performance" and the operating systems "linux" or "unix".
<map> <!-- ... --> <topicSubjectTable> <topicSubjectHeader> <topicCell type="task"/> <subjectCell> <topicsubject keyref="goal"/> </subjectCell> <subjectCell> <topicapply keyref="os"/> </subjectCell> </topicSubjectHeader> <topicSubjectRow> <topicCell> <topicref href="webServerStart.dita" navtitle="Configuring cron for efficient startup"/> <topicref href="dbDisk.dita" navtitle="Allocating raw storage"/> </topicCell> <subjectCell> <topicsubject keyref="performance"/> </subjectCell> <subjectCell> <topicapply keyref="linux"/> <topicapply keyref="unix"/> </subjectCell> </topicSubjectRow> <topicSubjectRow> <topicCell> <topicref href="webLogAnalyze.dita" navtitle="Analyzing web logs for service issues"/> <topicref href="webDenialService.dita" navtitle="Detecting denial-of-service attacks"/> </topicCell> <subjectCell> <topicsubject keyref="reliability"/> </subjectCell> <subjectCell> <topicapply keyref="linux"/> <topicapply keyref="unix"/> <topicapply keyref="windows"/> </subjectCell> </topicSubjectRow> <!-- ... --> </topicSubjectTable> </map>
A table view of this <topicSubjectTable> might look as follows. This is only one of many possible views; to aid in understanding the example, the content topics in the first column are displayed using only their titles, and related subjects are displayed using only their @keyref attribute value.
task | goal | os |
---|---|---|
Configuring cron for efficient startup Allocating raw storage |
performance |
linux unix |
Analyzing web logs for service issues Detecting denial-of-service attacks |
reliability |
linux unix windows |
Attributes
The following attributes are available on this element: Universal attribute group and Attributes common to many map elements (with a narrowed definition of @toc, given below). This element also uses @type, @scope, and @format from Link relationship attribute group.
- @toc
- Specifies whether a topic appears in the table of contents (TOC). If the value is not specified locally, but is specified on an ancestor, the value will cascade from the closest ancestor. On this element the default value for @toc is "no". See Attributes common to many map elements for a complete definition of @toc.