FORMAT OF THE TABLE STREAM

Word stores various plcfs and tables with the stream named either "0Table" or "1Table". Ordinarily a file will contain only one table stream. However, in some unusual circumstances (e.g. crash during file save) a file might have two table streams. In that case the bit field fWhichTblStm in the FIB should be used to determine which table stream to read. If fWhichTblStm is 0, then the FIB refers to the stream named "0Table", and if fWhichTblStm is 1, then the FIB refers to the stream name "1Table".

sttbfUssr

Undocumented undo / versioning data

plcupcRgbuse

Undocumented undo / versioning data

plcupcUsp

Undocumented undo / versioning data

uskf

Undocumented undo / versioning data

stsh (style sheet)

Written immediately after the preivous table. This is recorded in all Word documents.

plcffndRef (footnote reference position table)

Written immediately after the stsh if the document contains footnotes

plcffndTxt (footnote text position table)

Written immediately after the plcffndRef if the document contains footnotes

pgdFtn (footnote text page description table)

Written immediately after the plcffndTxt if the document contains footnotes

bkdFtn (footnote text break descriptor table)

Written immediately after the pgdFtn if the document contains footnotes.

plcfendRef (endnote reference position table)

Written immediately after the previously recorded table if the document contains endnotes

plcfendTxt (endnote text position table)

Written immediately after the plcfendRef if the document contains endnotes

pgdEdn (endnote text page description table)

Written immediately after the plcfendTxt if the document contains endnotes

bkdEdn (endnote text break descriptor table)

Written immediately after the pgdEdn if the document contains endnotes

plcftxbxTxt (text box link table)

Written immediately after the previously recorded table if the document contains textboxes

plcftxbxBkd (text box break descriptor table)

Written immediately after the plcftxbxTxt if the document contains textboxes

plcfhdrtxbxTxt (header text box link table)

Written immediately after the previously recorded table if the header subdocument contains textboxes

plcfhdrtxbxBkd (header text box break descriptor table)

Written immediately after the plcfhdrtxbxTxt if the header subdocument contains textboxes.

grpXstAtnOwners (annotation owner table)

Written immediately after the previously recorded table if the document contains annotations.

plcfandRef (annotation reference position table)

Written immediately after the grpXstAtnOwners if the document contains annotations

plcfandTxt (annotation text position table)

Written immediately after the plcfandRef if the document contains annotations.

plcfsed (section table)

Written immediately after the previously recorded table. Recorded in all Word documents

pgdMother (page description table)

Written immediately after the plcfsed in all Word documents

bkdMother (break descriptor table)

Written immediately after the pgdMother in all Word documents

plcfphe (paragraph height table)

Written after the previously recorded table, if paragraph heights have been recorded. Only written during a fast save.

plcfsea (private)

PLCF reserved for private use by Word.

plcflvc (list and outline level table)

Written immediately after the previously recorded table during fast save only.

plcasumy (AutoSummary analysis)

Written immediately after the previously recorded table, if the document stored is in AutoSummary view mode.

sttbGlsy (glossary name string table)

Written immediately after the previously recorded table, if the document stored is a glossary.

sttbGlsyStyle (glossary style name string table)

Written immediately after sttbGlsy, if the document stored is a glossary.

plcfglsy (glossary entry text position table)

Written immediately after the previously recorded table, if the document stored is a glossary.

plcfhdd (header text position table)

Written immediately after the previously recorded table, if the document contains headers or footers.

plcfbteChpx (bin table for CHP FKPs)

Written immediately after the previously recorded table. This is recorded in all Word documents.

plcfbtePapx (bin table for PAP FKPs)

Written immediately after the plcfbteChpx. This is recorded in all Word documents.

plcfbteLvc (bin table for LVC FKPs)

Written immediately after the plcfbtePapx. This is recorded in all Word documents.

sttbfRMark (revision mark author string table)

Written immediately after plcfbteLvc, if the document contains revision marks.

plcffldMom(table of field positions and statuses for main document)

Written immediately after the previously recorded table if the main document contains fields.

plcffldHdr(table of field positions and statuses for header subdocument)

Written immediately after the previously recorded table, if the header subdocument contains fields.

plcffldFtn(table of field positions and statuses for footnote subdocument)

Written immediately after the previously recorded table, if the footnote subdocument contains fields.

plcffldAtn(table of field positions and statuses for annotation subdocument)

Written immediately after the previously recorded table, if the annotation subdocument contains fields.

plcffldEdn(table of field positions and statuses for endnote subdocument)

Written immediately after the previously recorded table, if the endnote subdocument contains fields.

plcffldTxbx(table of field positions and statuses for textbox subdocument)

Written immediately after the previously recorded table, if the textbox subdocument contains fields.

plcOcx (ocx position table)

Written immediately after the previously recorded table, if the document contains ole controls. Undocumented.

plcffldHdrTxbx(table of field positions and statuses for textbox subdocument of header subdocument)

Written immediately after the previously recorded table, if the textbox subdocument of the header subdocument contains fields.

dggInfo (office drawing information)

Written immediately after the previously recorded table. Format is described in the Office drawing group format document.

plcspaMom (office drawing table)

Written immediately after the previously recorded table, if the document contains office drawings.

plcspaHdr (header office drawing table)

Written immediately after the previously recorded table, if the header subdocument contains office drawings.

sttbfBkmk (table of bookmark name strings)

Written immediately after the previously recorded table, if the document contains bookmarks.

plcfBkmkf (table recording beginning CPs of bookmarks)

Written immediately after the sttbfBkmk, if the document contains bookmarks.

plcfBkmkl (table recording limit CPs of bookmarks)

Written immediately after the plcfBkmkf, if the document contains bookmarks.

sttbfAtnBkmk (table of annotation bookmark string names)

Written immediately after the previously recorded table, if the document contains annotations with bookmarks.

plcfAtnbkf (table recording beginning CPs of bookmarks in the annotation subdocument)

Written immediately after the sttbfAtnBkmk previously recorded table, if the document contains annotations with bookmarks.

plcfAtnbkl (table recording limit CPs of bookmarks in the annotation subdocument)

Written immediately after the plcfAtnbkf previously recorded table, if the document contains anotations with bookmarks.

plcfspl (spelling state table)

Written immediately after the previously recorded table. Records state of spell checking in a PLCF of SPLS structures.

plcfgram (grammar state table)

Written immediately after the previously recorded table. Records state of grammar checking in a PLCF of SPLS structures.

plcfwkb (work book document partition table)

Written immediately after the previously recorded table, if the document is a master document.

formFldSttbs (form field dropdown string tables)

Written immediately after the previously recorded table, if the document contains form field dropdown controls.

sttbCaption (caption title string table)

Written immediately after the previously recorded table, if the document contains captions.

sttbAutoCaption (auto caption string table)

Written immediately after the previously recorded table, if the document contains auto captions.

sttbFnm (filename reference string table)

Written immediately after the previously recorded table, if the document references other documents.

sttbSavedBy (last saved by string table)

Written immediately after the previously recorded table.

plcflst (list formats)

Written immediately after the end of the previously recorded, if there are any lists defined in the document. This begins with a short count of LSTF structures followed by those LSTF structures.

This is immediately followed by the allocated data hanging off the LSTFs. This data consists of the array of LVLs for each LSTF . (Each LVL consists of an LVLF followed by two grpprls and an XST.)

plflfo (more list formats)

Written immediately after the end of the plcflst and its accompanying data, if there are any lists defined in the document. This consists first of a PL of LFO records, followed by the allocated data (if any) hanging off the LFOs. The allocated data consists of the array of LFOLVLFs for each LFO (and each LFOLVLF is immediately followed by some LVLs).

sttbfListNames (more list formats)

Written immediately after the end of the plflfo and its accompanying data, if there are any lists defined in the document. This is a string table containg the list names for each list. It is parallel with the plcflst, and may contain null strings if the corresponding LST does not have a list name.

hplgosl (grammar option settings)

Written immediately after the previously recorded table. This undocumented structure maps LID and grammar checker type to grammar checking options.

stwUser (macro user storage)

routeSlip (mailer routing slip)

Written immediately after the previously recorded table, if this document has a mailer routing slip.

cmds (recording of command data structures)

Written immediately after the previously recorded table, if special commands are linked to this document.

prDrvr (printer driver information)

Written immediately after the previously recorded table, if a print environment is recorded for the document.

prEnvPort (print environment in portrait mode)

Written immediately after the previously recorded table, if a portrait mode print environment is recorded for this document.

prEnvLand (print environment in landscape mode)

Written immediately after the previously recorded table, if a landscape mode print environment is recorded for this document.

wss (window state structure)

Written immediately after the end of previously recorded structure, if the document was saved while a window was open.

pms (print merge state)

Written immediately after the previously recorded table, if information about the print / mail merge state is recorded for the document

clx (encoding of the sprm lists for a complex file and piece table for a any file)

Written immediately after the end of previously recorded structure. This is recorded in all Word documents.

sttbfffn (table of font name strings)

Written immediately after the clx. This is recorded in all Word documents. The sttbfffn is an sttbf where each string is instead an FFN structure (note that just as for a pascal-style string, the first byte in the FFN records the total number of bytes not counting the count byte itself). The names of the fonts correspond to the ftc codes in the CHP structure. For example, the first font name listed corresponds is the name for ftc = 0.

sttbttmbd (true type font embedding string table)

Written immediately after the end of previously recorded structure if document contains embedded true type fonts.

dop (document properties record)

Written immediately after the end of previously recorded structure. This is recorded in all Word documents

sttbfAssoc (table of associated strings)

autosaveSource (name of original)

Written immediately after the sttbfAssoc table. This field only appears in autosave files. These files are normal Word documents in every other way. Also, autosaved files are typically in the complex file format except that we don't overwrite the tables (plcf*, etc.). I.e., an autosaved file is typically longer than the equivalent Word document.