Structure Application Developer Reference
3
Using this manual
This manual provides detailed reference information for application rules and properties. It can be 
used in conjunction with the Structure Application Developer Guide. It does not currently include 
EDD reference information. All EDD descriptive and reference information will be found in the 
Developer Guide.
Typographical conventions
Using other FrameMaker documentation
The Adobe FrameMaker 8 User Guide makes up the primary end-user documentation for this 
product. It explains how to use the FrameMaker authoring environment for both structured and 
unstructured documents. It also explains how to create templates for your documents. 
In creating a structured template, you can refer to this manual for information on how your end 
user interacts with the product and how to create a formatted template. 
New features and changes since release 8 (including those for structure applications and 
structured documents) are listed and briefly described in the FrameMaker 8 Release Notes.
You will also find a range of other online documents if you select Help > Quick Start > Manuals...
Monospaced font
Literal values and code, such as XML, SGML, read/write 
rules, filenames, and pathnames.
Italics
Variables or placeholders in code. For example, in 
name="myName", the text myName represents a value you 
are expected to supply. Also indicates the first occurrence 
of a new term.
Blue text
A hyperlink you can click to go to a related section in this 
book or to a URL in your web browser.
Sans-serif bold
The names of FrameMaker User Interface objects (menus, 
menu items, and buttons). The > symbol is used as 
shorthand notation for navigating to menu items and sub 
menus. For example, Element > Validate... refers to the 
Validate... item in the Element menu.
Best pdf to html converter - Convert PDF to html files in C#.net, ASP.NET MVC, WinForms, WPF application
How to Convert PDF to HTML Webpage with C# PDF Conversion SDK
how to convert pdf to html email; online pdf to html converter
Best pdf to html converter - VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.net, ASP.NET MVC, WinForms, WPF application
PDF to HTML Webpage Converter SDK for VB.NET PDF to HTML Conversion
converting pdf into html; embed pdf to website
Before You Begin
4
Using FDK manuals
If you create an XML and SGML API client for your XML or SGML application, you’ll need to be 
familiar with the FDK. FDK documentation is written for developers with C programming 
experience. 
FDK Programmer’s Guide is your manual for understanding FDK basics. This manual describes 
how to use the FDK to enhance the functionality of FrameMaker and describes how to use the 
FDK to work with structured documents. (To make advanced modifications to the software’s 
default translation behavior, refer to the Structure Import/Export API Programmer’s Guide.)
FDK Programmer’s Reference is a reference for the functions and objects described in the FDK 
Programmer’s Guide.
Structure Import/Export API Programmer’s Guide explains how to use the FDK to make advanced 
modifications to the software’s default behavior for translation between markup documents 
and FrameMaker documents. This manual contains both descriptive and reference information.
For information on other FDK manuals, see “Using Frame Developer Tools” in the FDK 
Programmer’s Guide.
Online Convert PDF to HTML5 files. Best free online PDF html
Our PDF to HTML converter library control is a 100% clean .NET document image solution, which is designed to help .NET developers convert PDF to HTML webpage
embed pdf into web page; convert pdf into html email
Purchase RasterEdge Product License Online
Now. Converter XDoc.Converter for .NET. Best file conversions for most common business files, including Adobe PDF, Microsoft Word, Excel, PowerPoint, HTML, Open
embed pdf into webpage; convert pdf to html for online
Structure Application Developer Reference
5
Structure Application Definition 
Reference
1
This chapter provides a comprehensive reference for all application properties that can be defined 
in a structure application definition file.
Contents of an application definition file
The highest-level element in a structapps.fm file is StructuredSetup and its first child 
must be Version, to indicate the FrameMaker version. The Version element is followed by 
zero or more SGMLApplication or XMLApplication elements, each of which defines the 
pieces of a structure application. Finally, there can be an optional Defaults element, which 
specifies information used unless overridden for a particular application.
The following table lists the main elements allowed in structapps.fm as children of the 
StructuredSetup element. The table identifies the sections that discuss each of those 
elements and the elements they may contain.
Define an application
FrameMaker collects all information pertaining to the set-up of a structured application into an 
SGMLApplication or XMLApplication element. These elements have one required child 
element and several optional child elements.
The first child of a parent SGMLApplication or XMLApplication element must be 
ApplicationName and gives the name of the application. It looks as following:
Application name: name
where name is a string used to identify your application in the Set Structure Application and Use 
Structure Application dialog boxes. You cannot use the same name for multiple structure 
applications.
Element
Discussed in
ApplicationName
“Define an application,” next
SGMLApplication
“Define an application” on page5
XMLApplication
“Define an application” on page5
Defaults
“Providing default information” on page7
C# PDF Convert to Images SDK: Convert PDF to png, gif images in C#
Graphics, and REImage in C#.NET Project. Best PDF converter SDK for Visual Studio .NET for converting PDF to image in C#.NET application.
convert from pdf to html; convert pdf to html with images
Online Convert PDF file to Tiff. Best free online PDF Tif
Online PDF to Tiff Converter. Download Free Trial. Convert a PDF File to Tiff. Just upload your file by clicking on the blue button
convert pdf to html online for; convert pdf fillable form to html
Structure Application Definition Reference
6
Define an application
If present, the optional child elements can occur in any order and can include the following 
elements, discussed in the named sections:
Some elements provide pathnames (for entities and read/write rules files; hence 
RulesSearchPaths and EntitySearchPaths elements). If the pathname is absolute, the 
software looks there. If it can’t find it via the specified path, the log reports an error and the 
operation is aborted. If a relative pathname is given, the software searches for the file in the 
following places:
The directory containing the file being processed. For example, if you’re opening a DTD, the 
software first searches the directory in which it found the DTD. 
$STRUCTDIR (for information on what directory this is, see the section “Location of Structure Files” 
in the Structure Application Developer Guide.
The directory from which you started FrameMaker.
Element
Discussed in
DOCTYPE
“Specifying a DOCTYPE element” on page9
DTD
“Specifying a DTD” on page10
CharacterEncoding
“Specifying the character encoding for SGML files” on page8
ConditionalText
“Specifying conditional text output” on page9
Entities
“Specifying entities” on page10
ExternalXRef
“Specifying external cross reference behavior” on page17
FileExtensionOverride
“Specifying filename extensions” on page18
Namespace
“Enabling namespaces” on page18
ReadWriteRules
“Specifying a read/write rules document” on page18
RulesSearchPaths
“Specifying a search path for included files in rules documents” 
on page19
Schema
“Specifying a Schema for XML” on page20 
SGMLDeclaration
“Specifying an SGML declaration” on page20
Stylesheets
“Managing CSS import/export and XSL transformation” on 
page20
Template
“Specifying a FrameMaker template” on page23
UseAPIClient, 
UseDefaultAPIClient, 
“Specifying a structure API client” on page23
XMLDisplayEncoding
“Specifying the character encoding for XML files” on page24
XMLExportEncoding
“Exporting XML” on page26
XMLCharacterEncoding
“XML character encoding from an SGML application” on 
pageHIDDEN
XMLWriteRules
“Write rules for saving XML from an SGML application” on 
pageHIDDEN
Online Convert PDF to Jpeg images. Best free online PDF JPEG
Online PDF to JPEG Converter. Download Free Trial. Convert a PDF File to JPG. Drag and drop your PDF in the box above and we'll convert the files for you.
adding pdf to html; convert pdf to url
C# WPF PDF Viewer SDK to convert and export PDF document to other
HTML Document Viewer for Azure, C# HTML Document Viewer Best PDF Viewer control as well as a powerful An advanced .NET WPF PDF converter library for converting
convert pdf to webpage; convert pdf to html
Providing default information
Structure Application Developer Reference
7
The following is a typical application definition (with pathnames shown for UNIX systems):
Application name: ReportNumeric
DOCTYPE: Report
Read/write rules: reports/rules/repnumer.rul
DTD: reports/repnumer.dtd
Template: reports/repnumer
Rules search paths
1: $STRUCTDIR/reports/rules
Use default API client.
If an application definition includes any of these elements, the value in the application definition 
overrides any value for that element in the Defaults element. The sections following the next 
section describe these elements in detail.
Providing default information
Some of the information you provide for individual applications may be common to all your 
applications. For such information, you can specify defaults that are used whenever an application 
does not provide its own version of the information. You use the Defaults element to provide 
such information. 
If present, the optional child elements of Defaults can occur in any order (with the exception 
of the Graphics element, which must be the last child) and can include the following elements, 
which are discussed in the named sections: 
Element
Discussed in
CharacterEncoding
“Specifying the character encoding for XML files” on page24
DTD
“Specifying a DTD” on page10
Entities
“Specifying entities” on page10
FrameDefaultAPIClient, 
UseAPIClient
“Specifying a structure API client” on page23
MaxErrorMessages
“Limiting the length of a log file” on page26
Namespace
“Enabling namespaces” on page18
ReadWriteRules
“Specifying a read/write rules document” on page18
RulesSearchPaths
“Specifying a search path for included files in rules documents” 
on page19
SGMLDeclaration
“Specifying an SGML declaration” on page20
Stylesheets
“Managing CSS import/export and XSL transformation” on 
page20
Template
“Specifying a FrameMaker template” on page23
XMLCharacterEncoding
“XML character encoding from an SGML application” on 
pageHIDDEN
C# PDF Print Library: Print PDF documents in C#.net, ASP.NET
C# HTML Document Viewer for Azure, C# HTML Document Viewer NET PDF Document Printer A best PDF printer control for Visual Studio .NET and compatible with C#
online convert pdf to html; convert pdf to web pages
VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.
Free VB.NET Guide to Render and Convert PDF Document to TIFF in Visual Basic Class. Best VB.NET adobe PDF to Tiff converter SDK for Visual Studio .NET.
convert pdf to url link; convert pdf into web page
Structure Application Definition Reference
8
Specifying the character encoding for SGML files
Specifying the character encoding for SGML files
The CharacterEncoding element provides instruction to the software on which encoding to 
use for the SGML text. Typically, this is only important on non-Western systems, or in SGML 
applications that encounter SGML files using double-byte text. It can contain one of the following 
child elements: ISOLatin1, ASCII, ANSI, MacASCII, ShiftJIS, KSC8EUC, GB8EUC, 
CNSEUC, Big5, JIS8EUC. The CharacterEncoding element looks as follows: 
SGML character encoding: Iso Latin1
On a non-Western system, the text for an SGML file can contain double-byte text. This text can be 
in any one of a number of different text encodings. For example, Japanese text on a UNIX system 
is typically in EUC. 
FrameMaker can interpret SGML files that contain double-byte text in #PCDATA, RCDATA, and 
CDATA. The software requires all other text to be within the 7-bit ASCII range (which is supported 
by all Asian fonts). This means that document content can be in double-byte encodings, but the 
markup must be in the ASCII range. Typically, for example, the only text in a DTD that will contain 
double-byte characters would be text used to specify attribute values.
To import and export SGML that contains double-byte text, you should specify the character 
encoding to use, either as a default for all applications, or for a specific SGML application. For a 
given SGML application, there can only be one encoding. If you don’t specify an encoding for your 
application, FrameMaker determines the encoding to use by considering the current default user 
interface language and the current operating system; for the current language, it uses the 
operating system’s default encoding. The default encodings for the supported operating systems 
are as follows:
XMLWriteRules
“Write rules for saving XML from an SGML application” on 
pageHIDDEN
Graphics
“Mapping graphic notations to file types” on page27
Element
Discussed in
Important: For SGML documents, you should not use accented characters in element tag 
names nor attribute names. If you use such characters, FrameMaker may not be able to 
correctly import or export the document.
Windows 95/NT
UNIX
Roman languages
ANSI
ISOLatin-1
Japanese
Shift-JIS
JIS8 EUC
Simplified Chinese
GB8 EUC
GB8 EUC
Traditional Chinese
Big5
CNS EUC
Korean
KSC8 EUC
KSC8 EUC
Specifying conditional text output
Structure Application Developer Reference
9
You can have an Asian language for the user interface, but the content of the document files in 
Roman fonts. In this case, any exported Roman text that falls outside of the ASCII range will be 
garbled. For this reason, we recommend that you specify an encoding for any application that 
might be used on a non-Western system.
The template for your application must use fonts that support the language implied by the 
encoding you specify. Otherwise, the text will appear garbled when imported into the template. 
You can fix this problem after specifying different fonts to use in the resulting files. 
Specifying conditional text output
Add a ConditionalText child to the XMLApplication element to control conditional text 
output. Place a single child, OutputTextPI in this element. Then add one of the four children 
listed in the following table to the OutputTextPI element:
The ConditionalText element can only be a child of an XMLApplication element.
Specifying a DOCTYPE element
The DOCTYPE element specifies the generic identifier of the DOCTYPE declaration and root 
element in markup documents used with this application. If you open a markup document with 
the matching document element specified in the DOCTYPE declaration, FrameMaker uses this 
application when translating the document. The element looks as follows:
DOCTYPE: doctype
where doctype identifies a document element. 
For example, 
DOCTYPE: chapter
matches a markup document with the following declaration:
<!DOCTYPE chapter ...>
If more than one application defined in the structapps.fm file specifies the same document 
element, and the end user opens a file with that document element, the software provides the 
user a choice of which of these applications to use. If the user opens a markup document for 
Child of OutputTextPi
FrameMaker outputs 
hidden conditional text
Processing instructions 
delimit conditional text 
OutputAllTextWithPIs
yes
yes
OutputAllTextWithoutPIs
yes
no
OutputVisibleTextWithPIs
no
yes
OutputVisibleTextWithoutPIs no
no
Structure Application Definition Reference
10
Specifying a DTD
which no application specifies its document element, the software provides the user the choice 
of all defined applications.
You can use more than one DOCTYPE element for an application, if that application is applicable 
to multiple document elements. For example, if the Book application applies when the document 
element is either chapter or appendix, you can use the following definition:
Application name: Book
DOCTYPE: chapter
appendix
. . . 
The DOCTYPE element can be a child of an SGMLApplication or XMLApplication element.
Specifying a DTD 
The DTD element specifies a file containing the external DTD subset that FrameMaker uses when 
importing and exporting a markup document. It looks as follows:
DTD: dtd
where dtd is the pathname of a file containing a document type declaration subset.
Note that the file you specify with the DTD element must be an external DTD subset. It cannot be 
a complete DTD. That is, the file cannot have the following form:
<!DOCTYPE book [
<!element book . . .>
. . .
]>
Instead, it should simply have the following form:
<!element book . . .>
. . .
For more information on external DTD subsets, see the “XML and SGML DTDs” section in the in 
the Structure Application Developer Guide.
You can have only one DTD element for each SGMLApplication or XMLApplication. It can 
also be a child of the Defaults element.
Specifying entities
To specify the location of various entities, you use the Entities element. It looks as follows:
Entity locations
Specifying entities
Structure Application Developer Reference
11
The possible child elements of a parent Entities element are as follows:
If you use the EntityCatalogFile element, you cannot use any of the elements Entity, 
FilenamePattern, or Public.
You can have only one Entities element for each application, although that Entities 
element can have more than one of some of its child elements. The Entities element can also 
be a child of the Defaults element.
Specifying entities through an entity catalog
The EntityCatalogFile element specifies a file containing mappings of an entity’s public 
identifier or entity name to a filename. It looks as follows:
Entity locations
Entity catalog file: fname
where fname is the filename of the entity catalog. Entity catalogs and their specified format are 
described below.
You can specify multiple EntityCatalogFile elements in a single Entities element. If you 
use this element, you cannot use any of the Entity, FilenamePattern, or Public elements.
You can use the EntityCatalogFile element both in the Entities element of the 
Defaults element and in an SGMLApplication or XMLApplication element to specify 
information for a particular application. When searching for an external entity, FrameMaker 
searches the application’s entity catalogs before searching the default entity catalogs. 
If you have an EntityCatalogFile element in an application definition, the software ignores 
Entity, FilenamePattern, and Public elements in the Defaults element.
Why use entity catalogs
Technical Resolution 9401:1994 published by SGML Open discusses entity management issues 
affecting how SGML documents work with each other:
Interpreting external identifiers in entity declarations so that an SGML document can be 
processed by different tools on a single computer system
Moving SGML documents to different computers in a way that preserves the association of 
external identifiers in entity declarations with the correct files or other storage objects.
Element
Discussed in
EntityCatalogFile
“Specifying entities through an entity catalog” on page11
Entity
“Specifying the location of individual entities” on page12
FileNamePattern
“Specifying names for external entity files” on page13
Public
“Specifying public identifiers” on page15
EntitySearchPaths
“Specifying a search path for external entity files” on page15
Structure Application Definition Reference
12
Specifying entities
The technical resolution uses entity catalogs and an interchange packaging scheme to address 
these issues. FrameMaker supports such entity catalogs with the EntityCatalogFile 
element. 
Entity catalog format
Each entry in the entity catalog file associates a filename with information about an external entity 
that appears in a markup document. For example, the following are catalog entries that associate 
a public identifier with a filename:
PUBLIC "ISO 8879-1986//ENTITIES Added Latin 1//EN" "isolat1.ent"
PUBLIC "-//USA/AAP//DTD BK-1//EN" "aapbook.dtd"
In addition to entries mapping public identifiers to filenames, an entry can associate an entity 
name with a filename as follows:
ENTITY "chips" "graphics\chips.tif"
A single catalog can contain both types of entry.
If the specified filename in a catalog entry is a relative pathname, the path is relative to the 
location of the catalog entry file.
For a complete description of the syntax of a catalog entry, see Technical Resolution 9401:1994 
Entity Management published by SGML Open.
How FrameMaker searches entity catalogs
A single application may use multiple catalog files. When trying to locate a particular external 
entity, FrameMaker searches the files one at a time until it finds the entry it is looking for. In each 
file, the software first searches for an entity using the external entity’s public identifier. If the 
software detects the identifier, it uses the associated filename to locate the entity. If it does not 
find the public identifier, the software searches the file looking for the entity name. If it does not 
find the entity name either, the software continues searching in the next catalog file.
In some circumstances, a system identifier specified in an external entity declaration may not be 
valid. If so, FrameMaker uses public identifier and entity name mappings.
Specifying the location of individual entities
Instead of using an entity catalog to associate entities with files, you can use the Entity element 
as a child of a parent Entities element. This element allows you to directly associate a filename 
with an individual entity. It looks as follows:
Entity locations
Entity name: ename
Filename: fname
where ename is the name of an entity and fname is a filename.
Documents you may be interested
Documents you may be interested