Adobe 65030365 Developer's Guide

Adobe 65030365 - FrameMaker - PC Manual

Adobe 65030365 manual content summary:

  • Adobe 65030365 | Developer's Guide - Page 1
  • Adobe 65030365 | Developer's Guide - Page 2
    Adobe, the Adobe logo, Acrobat, Acrobat Reader, Adobe Type Manager, ATM, Display PostScript, Distiller, Exchange, Frame, FrameMaker, FrameViewer, InstantView, and PostScript are trademarks of Adobe Systems Incorporated. Apple, PowerBook, QuickTime, Mac, Macintosh and Power Macintosh are trademarks
  • Adobe 65030365 | Developer's Guide - Page 3
    4 Path and filename changes 4 Application development 5 Read/write rules 5 Namespaces 5 CSS support 5 Exporting variables to markup 5 New starter kits 6 Chapter 2 Structure Application Basics 7 16 Attributes 16 Entities 17 Documents 18 Structure Application Developer's Guide iii
  • Adobe 65030365 | Developer's Guide - Page 4
    Equations 20 Tables 21 Cross-references 21 Processing instructions 22 Parameter entity declarations 22 Chapter 4 26 Supported characters in element and attribute names 26 Unicode and character encodings 27 Supported encodings namespaces 56 Structure Application Developer's Guide iv
  • Adobe 65030365 | Developer's Guide - Page 5
    element definitions 104 Log files for imported element definitions . . . 104 Debugging element definitions 104 Saving an EDD as a DTD for export 105 Structure Application Developer's Guide v
  • Adobe 65030365 | Developer's Guide - Page 6
    elements automatically in Rubi groups 123 Initial structure pattern 123 Debugging structure rules 123 Chapter 10 Text Format Rules for Containers, Tables, and Footnotes - - 125 In this chapter 160 A prefix or suffix for a text range or a paragraph 161 Structure Application Developer's Guide vi
  • Adobe 65030365 | Developer's Guide - Page 7
    DTD fragment 203 Document instance 204 EDD fragment 205 Formatting and read/write rules 206 FrameMaker document 206 Opening XML documents 207 Structure Application Developer's Guide vii
  • Adobe 65030365 | Developer's Guide - Page 8
    Changing an attribute's type or declared value. . 243 Creating read-only attributes 244 Using markup attributes to specify FrameMaker formatting information 244 Structure Application Developer's Guide viii
  • Adobe 65030365 | Developer's Guide - Page 9
    268 Creating book components from general entities 268 Discarding unknown processing instructions 268 Using entities for storing graphics or equations . 269 Chapter In this chapter 297 Default translation 298 Supported graphic file formats 298 Structure Application Developer's Guide ix
  • Adobe 65030365 | Developer's Guide - Page 10
    translation 337 Translating markup elements as FrameMaker marker elements 337 Writing marker text as element content instead of as an attribute 337 Structure Application Developer's Guide x
  • Adobe 65030365 | Developer's Guide - Page 11
    elements to identify book components on import 351 Suppressing the creation of processing instructions for a book on export 353 Chapter 25 Read/Write Rules Summary 355 name is 383 do not output book processing instructions . . . 373 equation 385 Structure Application Developer's Guide xi
  • Adobe 65030365 | Developer's Guide - Page 12
    443 marker text is 444 notation is 445 output book processing instructions 447 preserve fm element definition 448 preserve line breaks 449 processing instruction 451 proportional width resolution is 452 put element 453 reader 453 reformat as plain text 454 reformat using target document
  • Adobe 65030365 | Developer's Guide - Page 13
    SGML Publishing Applications 521 Implementing an XML or SGML application in the FrameMaker publishing environment 521 Overview of FrameMaker Application Development 521 Structure Application Developer's Guide xiii
  • Adobe 65030365 | Developer's Guide - Page 14
    Technical Steps in FrameMaker Application Development 529 Typical Application Development Scenarios.538 Conclusions 542 Glossary 545 Index 555 Structure Application Developer's Guide xiv
  • Adobe 65030365 | Developer's Guide - Page 15
    two, and this manual covers these differences whenever necessary. When discussing the similarities between them, this manual refers to XML the formatting of element instances in various contexts. To support these end users, you create the catalog and accompanying Application Developer's Guide xv
  • Adobe 65030365 | Developer's Guide - Page 16
    For this information, see the Structure Import/Export API Programmer's Guide. Using FrameMaker documentation FrameMaker comes with a complete set of end need to be familiar with the FDK documentation set. Using this manual This manual is divided into three major parts and a series of appendixes.
  • Adobe 65030365 | Developer's Guide - Page 17
    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 Structure Application
  • Adobe 65030365 | Developer's Guide - Page 18
    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. Before You Begin xviii
  • Adobe 65030365 | Developer's Guide - Page 19
    a FrameMaker structure application Part I provides basic information for developing SGML applications, manual including: • Chapter 2, "Structure Application Basics" Describes situations that require a that defines the pieces of your structure application. Structure Application Developer's Guide 1
  • Adobe 65030365 | Developer's Guide - Page 20
    Developing a FrameMaker structure application 2
  • Adobe 65030365 | Developer's Guide - Page 21
    settings and identify conditional material. It interprets these processing instructions when importing an XML document and thus supports round-tripping of conditional text. See Chapter 23, used this modified filename to label the resulting document window. Structure Application Developer's Guide 3
  • Adobe 65030365 | Developer's Guide - Page 22
    to the definition in the XML entity declaration. FrameMaker 7.1 therefore supports round-tripping of such entity declarations. See "Internal text entities" on in FrameMaker, and provide links to the parts of this manual that describe these changes in detail. Path and filename changes Earlier
  • Adobe 65030365 | Developer's Guide - Page 23
    entities. Depending on the variable, some of these entities can be SDATA or CDATA. XML doesn't support SDATA or CDATA entities- you have two options for handling such non-element variables: • By default, FrameMaker exports them as empty elements in markup. Structure Application Developer's Guide 5
  • Adobe 65030365 | Developer's Guide - Page 24
    starter kits FrameMaker 7.0 includes a new starter kit for XHTML, and an updated kit for DocBook 4.1 (SGML) and 4.1.2 (XML). For more information, see the starter kit manuals in the online manuals directory. What's New in FrameMaker 6
  • Adobe 65030365 | Developer's Guide - Page 25
    to modify the default translation between markup data and FrameMaker documents. In that case, this entire manual is of use to you. The rest of Part I provides general information on creating a FrameMaker documents as XML or SGML of a specific doctype Structure Application Developer's Guide 7
  • Adobe 65030365 | Developer's Guide - Page 26
    the reverse. Or assume your company needs to publish documents in print, PDF, and XML. The authors can create the documentation in FrameMaker, paying When they have a final version of the documents they can save them as PDF and XML, and the online documentation will be made from the same source
  • Adobe 65030365 | Developer's Guide - Page 27
    found in the DTD or the EDD, as shown in the following illustration. The top of the illustration shows pages of SGML and FrameMaker documents, while the bottom shows a DTD corresponding DTD. The FrameMaker page and EDD illustrate a similar correspondence. Structure Application Developer's Guide 9
  • Adobe 65030365 | Developer's Guide - Page 28
    together, and even in the thoughts that can be easily expressed with them. For documents to move between FrameMaker and markup data, the software needs instructions to help it translate between the two languages. Structure Application Basics
  • Adobe 65030365 | Developer's Guide - Page 29
    recommend you to start by using FrameMaker's tools for creating an EDD (described in Part II of this manual) and then create a DTD from that EDD. Translation between DTDs and EDDs FrameMaker can automatically translate a of these items. For Structure Application Developer's Guide 11
  • Adobe 65030365 | Developer's Guide - Page 30
    't be able to translate between the markup data and FrameMaker representations. In other situations, your XML or SGML document may contain processing instructions that need to be interpreted but are unknown to FrameMaker. In such situations, you can customize FrameMaker via the FDK. The FDK allows
  • Adobe 65030365 | Developer's Guide - Page 31
    purpose of the pieces. Markup has nothing to say about the semantics of the process, that is, the meaning of those pieces. Structure Application Developer's Guide 13
  • Adobe 65030365 | Developer's Guide - Page 32
    the term DTD, it can refer to either a complete DTD or to an external DTD subset. In the few places where the distinction matters, the manual clarifies which one is meant. Elements In both markup data and in FrameMaker, the basic building blocks of documents are elements. Elements hold pieces of
  • Adobe 65030365 | Developer's Guide - Page 33
    be represented by an element with a declared content of empty in markup. It can also be represented by a completely different element structure. Structure Application Developer's Guide 15
  • Adobe 65030365 | Developer's Guide - Page 34
    elements. Attributes FrameMaker and markup both provide attributes to supply additional information about an element. For example, the DTD designer for a manual could use an attribute called version for its book element to allow the user to specify a book's revision status. A General Comparison
  • Adobe 65030365 | Developer's Guide - Page 35
    on defining attributes in an EDD, see Chapter 11, "Attribute Definitions," in this manual. For information on translating between FrameMaker and markup attributes, see Chapter 16, "Translating can store graphics and equations externally or internally. Structure Application Developer's Guide 17
  • Adobe 65030365 | Developer's Guide - Page 36
    creating variables, text insets, and books, see the FrameMaker User Guide. For information on translating entities to various FrameMaker constructs, see Chapter 17, "Translating Entities and Processing Instructions," Chapter 19, "Translating Graphics and Equations,"Chapter 21, "Translating Variables
  • Adobe 65030365 | Developer's Guide - Page 37
    are part of the document instance of a single markup document. For information on creating FrameMaker books, see the FrameMaker and FrameMaker user guides. For information on creating books from text entities, see Chapter 24, "Processing Multiple Files as Books." Format rules Markup has no standard
  • Adobe 65030365 | Developer's Guide - Page 38
    MyTab element. For information on creating format rules in an EDD, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes," and Chapter 12, and this manual discusses them together. For information on creating graphics and equations in FrameMaker, see the FrameMaker User Guide. For
  • Adobe 65030365 | Developer's Guide - Page 39
    use the CALS table model, which is similar to the table description supported by FrameMaker. Other DTDs can have element structure that is not automatically information on working with tables in FrameMaker, see the FrameMaker User Guide. For information on defining tables and table parts in an EDD,
  • Adobe 65030365 | Developer's Guide - Page 40
    cross-references in FrameMaker documents, see the FrameMaker User Guide. For information on translating cross-references to markup, see Chapter 20, "Translating Cross-References." Processing instructions Markup data can include processing instructions to modify the treatment of a document in some
  • Adobe 65030365 | Developer's Guide - Page 41
    must write a Structure API client. For information on writing a Structure API client, see the online manual that comes with the FDK, the Structure Import/Export API Programmer's Guide. Marked sections and conditional text Both SGML and FrameMaker have mechanisms for specifying portions of a document
  • Adobe 65030365 | Developer's Guide - Page 42
    on working with conditional text, see the FrameMaker User Guide. Unsupported optional SGML features The SGML standard defines some features considered a conforming SGML system. The following optional SGML features are not supported by FrameMaker: • DATATAG • RANK • LINK • SUBDOC • CONCUR
  • Adobe 65030365 | Developer's Guide - Page 43
    general, see Chapter 3, "A General Comparison of Markup and FrameMaker Documents." Namespace declaration FrameMaker supports the use of namespace declarations in XML. A namespace can be declared as an element , with the URI as the attribute value. Structure Application Developer's Guide 25
  • Adobe 65030365 | Developer's Guide - Page 44
    range of UNICODE. While FrameMaker can read XML content that contains the full range of UNICODE, FrameMaker has limited support of the characters for markup tokens. This support is limited to characters of the current display encoding. This display encoding can be determined by the locale of the
  • Adobe 65030365 | Developer's Guide - Page 45
    and character encodings refer to the online manual, FrameMaker Character Sets and note the to manipulate elements or attributes whose names contain such text. Supported encodings FrameMaker ships with support for the following encodings, listed by their IANA names: Application Developer's Guide 27
  • Adobe 65030365 | Developer's Guide - Page 46
    the input locale of your operating system. However, you can specify a different encoding in your XML structure application. FrameMaker supports the following display encodings: Display encoding: FrameRoman JISX0208.ShiftJIS BIG5 GB2312-80.EUC KSC5601-1992 For this language: Western European
  • Adobe 65030365 | Developer's Guide - Page 47
    Declaration DTD Entities Struct application Read/Write Rules Application Definition FM Environment EDD FrameMaker Template Markup Document FrameMaker Open/Save As Commands Structure Application Developer's Guide FrameMaker Document 29
  • Adobe 65030365 | Developer's Guide - Page 48
    6 The development process The development process As a structure application developer, your primary task is to modify the default translation behavior of FrameMaker to fit the circumstances of your application. This section gives an overview of the steps used to create a structure application and
  • Adobe 65030365 | Developer's Guide - Page 49
    Consider the main design issues. You need to think about: • the kinds of documents you need to support • what end users need in terms of access to both FrameMaker and markup versions of the same document your system administrator must install FrameMaker. Structure Application Developer's Guide 31
  • Adobe 65030365 | Developer's Guide - Page 50
    contain extra information about their associated elements • entities to various constructs such as variables The software produces a log file if it encounters any problems while processing your DTD. (4) Create an EDD, if you're starting from scratch. If you're in the situation of having neither
  • Adobe 65030365 | Developer's Guide - Page 51
    below the chart give more detail on some of the steps. Numbers in the flowchart refer to the notes below the chart. Structure Application Developer's Guide 33
  • Adobe 65030365 | Developer's Guide - Page 52
    6 The development process Yes No Do you have sample documents? Are your sample documents in markup? Yes No Create sample documents from scratch. (6) Are your sample documents structured FrameMakerdocume nts? Yes No Are your sample documents unstructured No FrameMaker Yes documents?
  • Adobe 65030365 | Developer's Guide - Page 53
    . The notes below the chart give more detail on some of the steps, and numbers in the flowchart refer to the notes. Structure Application Developer's Guide 35
  • Adobe 65030365 | Developer's Guide - Page 54
    . Identify needed rules and other information such as entity locations. (9) Write read/write rules and modify application definition to change FrameMaker's default behavior. (10) Use your modified application to create a new version of the EDD or DTD from the current DTD or EDD. (11) If you're
  • Adobe 65030365 | Developer's Guide - Page 55
    DTD may also use other declared values, such as IDREFS, NAME, and NAMES, for cross-references. (10) Write rules and modify the application definition. While working on your rules, you may need to modify your processes a DTD or a markup document on Structure Application Developer's Guide 37
  • Adobe 65030365 | Developer's Guide - Page 56
    may find problems that cause the DTD to be syntactically invalid. Some problems can be corrected the DTD with the modified application, you can manually invoke the SGML parser to validate your changes. include appropriate format rules. FrameMaker supports context-sensitive formatting. An element
  • Adobe 65030365 | Developer's Guide - Page 57
    submenu from the File menu. This submenu contains only developer commands. You may wish to remove other menu items as well. For Structure Application Developer's Guide 39
  • Adobe 65030365 | Developer's Guide - Page 58
    previous section in other parts of this manual and in other manuals. The table lists the topics by "Translating between markup data and FrameMaker" Chapter 10, "Text Format Rules for Containers, Tables, )" Structure Import/Export API Programmer's Guide Customizing FrameMaker Products (for Macintosh or
  • Adobe 65030365 | Developer's Guide - Page 59
    markup instance as a FrameMaker document. SGML declaration XML: The XML specification does not support user-defined SGML declarations. The following discussion is for SGML, only. An SGML neither the SGML structure application nor a particular SGML Structure Application Developer's Guide 41
  • Adobe 65030365 | Developer's Guide - Page 60
    separate files to your end users. For information on entities and entity catalogs, see Chapter 17, "Translating Entities and Processing Instructions," Chapter 7, "Working with Special Files," and Appendix F, "ISO Public Entities." Documentation As part of your structure application, you should write
  • Adobe 65030365 | Developer's Guide - Page 61
    is written for developers creating structure applications. Refer end users to the FrameMaker and FrameMaker user guides. You can remove this manual from your end users' installation directory. Creating a FrameMaker template You should deliver your FrameMaker template to end users as a separate
  • Adobe 65030365 | Developer's Guide - Page 62
    6 Creating a FrameMaker template Building block Meaning The autonumber counters of the source element's first paragraph (or of the paragraph containing the source element), including any characters between the counters The value of the attribute with the
  • Adobe 65030365 | Developer's Guide - Page 63
    (where lowest means the value closest to the top of the pop-up menu on the right side of the Attributes window) Structure Application Developer's Guide 45
  • Adobe 65030365 | Developer's Guide - Page 64
    For general information about how FrameMaker generates and formats lists and indexes, see the FrameMaker user's manual. HTML mapping for export The FrameMaker User Guide includes instructions for converting a FrameMaker document to HTML. Converting FrameMaker documents to HTML uses nearly the same
  • Adobe 65030365 | Developer's Guide - Page 65
    do that work. After you build a template, you can use the process described in the FrameMaker user's guide to set up the HTML mapping for it. The mapping information will be stored on the HTML reference web page for every section of a level 1, 2, or 3. Structure Application Developer's Guide 47
  • Adobe 65030365 | Developer's Guide - Page 66
    valid for that HTML element or not. The HTML specification says that User Agents should ignore attributes they don't understand, so this is not a major problem unless you need to validate your HTML file. For HTML elements that use the alt attribute (, for example) your description can appear in
  • Adobe 65030365 | Developer's Guide - Page 67
    directory in the maker.ini file. For information about the maker.ini file, see the FrameMaker user's manual. On all platforms, you can use the variable $STRUCTDIR to refer to the structure directory. The the definitions of any applications you create. Structure Application Developer's Guide 49
  • Adobe 65030365 | Developer's Guide - Page 68
    contents of this directory, see Appendix F, "ISO Public Entities." The XHTML starter kit files. For information on this directory, see the online manual Using the XHTML Starter Kit. If you choose, you can create other directories under $STRUCTDIR to hold files for your applications. Application
  • Adobe 65030365 | Developer's Guide - Page 69
    translation" on page 344 in Chapter 23, "Translating Conditional Text." "Providing default information" on page 54 "Specifying a document element" on page 55 Structure Application Developer's Guide 51
  • Adobe 65030365 | Developer's Guide - Page 70
    7 Application definition file Element Discussed in DTD "Specifying a DTD" on page 56 Entities "Specifying entities" on page 57 Entity "Specifying the location of individual entities" on page 59 EntityCatalogFile "Specifying entities through an entity catalog" on page 58 EntityName "
  • Adobe 65030365 | Developer's Guide - Page 71
    example, if you're opening a DTD, the software first searches the directory in which it found the DTD only. If the pathname Structure Application Developer's Guide 53
  • Adobe 65030365 | Developer's Guide - Page 72
    7 Application definition file is absolute, it looks there. If it can't find it via the specified path, the log reports an error and the operation is aborted. • $STRUCTDIR (for information on what directory this is, see "Location of structure files" on page 49) • The directory from which you
  • Adobe 65030365 | Developer's Guide - Page 73
    rules document associated with the application. It looks like: ReadWriteRules: rules where rules is the pathname of a FrameMaker read/write rules document. Structure Application Developer's Guide 55
  • Adobe 65030365 | Developer's Guide - Page 74
    specifies a filename extension to use when saving a FrameMaker document as XML. This is most useful when saving XHTML documents. Some web browsers that support XHTML can only read files with a .htm or .html extension. When you save a document as XML (even using the XHTML doctype) FrameMaker gives
  • Adobe 65030365 | Developer's Guide - Page 75
    catalog" on page 58 "Specifying the location of individual entities" on page 59 "Specifying names for external entity files" on page 60 Structure Application Developer's Guide 57
  • Adobe 65030365 | Developer's Guide - Page 76
    declarations with the correct files or other storage objects The technical resolution uses entity catalogs and an interchange packaging scheme to address these issues. FrameMaker supports such entity catalogs with the EntityCatalogFile element. Working with Special Files 58
  • Adobe 65030365 | Developer's Guide - Page 77
    element can be a child of a parent Entities element in the Defaults element to set default entity information and of a parent SGMLApplication or Structure Application Developer's Guide 59
  • Adobe 65030365 | Developer's Guide - Page 78
    7 Application definition file XMLApplication element to specify information for a particular application. When searching for an external entity, the software searches the application's entity locations before searching those in the default Entity elements. Specifying names for external entity
  • Adobe 65030365 | Developer's Guide - Page 79
    want to give multiple filenames to search for a particular public identifier, you can specify the same public identifier in multiple Public elements. Structure Application Developer's Guide 61
  • Adobe 65030365 | Developer's Guide - Page 80
    generate a new one and use that for the exported XML. This element also contains instructions concerning the use of attributes and stylesheet processing instructions. The Stylesheets element looks like: Stylesheets: CssPreferences: Generate CSS2: enable/disable AddFmCSSAttrToXML: enable/disable
  • Adobe 65030365 | Developer's Guide - Page 81
    external entity, FrameMaker searches the directories named in the EntitySearchPaths element for the application before it searches those in a default EntitySearchPaths element. Structure Application Developer's Guide 63
  • Adobe 65030365 | Developer's Guide - Page 82
    7 Application definition file An Entities element can contain only one EntitySearchPaths element. The software assumes the EntitySearchPaths element ends this way: EntitySearchPaths . . . N: $SRCDIR Thus, if there is no EntitySearchPaths element, the software assumes all markup files are in the
  • Adobe 65030365 | Developer's Guide - Page 83
    directoryi is a device-dependent directory name. The three variables and their abbreviations that can be used to specify a directory are as follows: Structure Application Developer's Guide 65
  • Adobe 65030365 | Developer's Guide - Page 84
    element in either context. For information on creating structure API clients for a structure application, see the online manual Structure Import/Export API Programmer's Guide. Specifying the character encoding for SGML files The CharacterEncoding element tells the software which encoding to use for
  • Adobe 65030365 | Developer's Guide - Page 85
    to be within the 7-bit ASCII range (which is supported by all Asian fonts). This means that document content can The default encodings for the supported operating systems are: Roman languages template for your application must use fonts that support the language implied by the encoding you specify.
  • Adobe 65030365 | Developer's Guide - Page 86
    character encodings" on page 27. FrameMaker converts the encoding of the XML document to an internal display encoding. In this way FrameMaker fully supports Unicode characters for text that is in #PCDATA, RCDATA, and CDATA. For any #PCDATA character that it cannot interpret, FrameMaker uses a marker
  • Adobe 65030365 | Developer's Guide - Page 87
    of the supported display For more information, see "Supported characters in element and attribute as the display encoding. It also supports any Big5 characters that are used support the given language. Otherwise, the text will appear garbled when imported into the template. You can fix this problem
  • Adobe 65030365 | Developer's Guide - Page 88
    conform with the IANA naming conventions. The standard installation of FrameMaker supports the encodings that are listed at the beginning of this discussion ( where n is the desired limit. If n is less than 10, the software resets it to 10. This must be the last child of the parent Defaults element
  • Adobe 65030365 | Developer's Guide - Page 89
    , and fatal errors. Warnings are notifications of potential problems; a warning does not necessarily mean something is wrong and continues processing. Errors indicate actual problems in the processing. For example, provides a facility for locating certain problems. Choose Check Read/Write Rules from
  • Adobe 65030365 | Developer's Guide - Page 90
    in the first example. The arrow indicates a hypertext link. If you activate the link, the software opens the document to the page containing the problem. If the source isn't a FrameMaker document, there is no hypertext link. In this situation, the description includes the line number in the file, as
  • Adobe 65030365 | Developer's Guide - Page 91
    9, "Structure Rules for Containers, Tables, and Footnotes" Chapter 11, "Attribute Definitions" Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes" Chapter 12, "Object Format Rules show examples of these constructs in element definitions. Structure Application Developer's Guide 73
  • Adobe 65030365 | Developer's Guide - Page 92
    Working with an EDD 74
  • Adobe 65030365 | Developer's Guide - Page 93
    catalog and in most cases provide values to fill out the definitions. For general information on working in structured documents, see the FrameMaker User Guide. In this chapter This chapter explains the process of developing an EDD and provides a summary of the elements in the EDD's Element Catalog
  • Adobe 65030365 | Developer's Guide - Page 94
    8 Overview of the development process What to do when you're finished developing an EDD: • "Creating an Element Catalog in a template" on page 103 • "Saving an EDD as a DTD for export" on page 105 Where to find structured documents and EDDs to review: • "Sample documents and EDDs" on page 107
  • Adobe 65030365 | Developer's Guide - Page 95
    you have some already developed. This lets you see how FrameMaker translates the DTD with little or no help from your rules. Structure Application Developer's Guide 77
  • Adobe 65030365 | Developer's Guide - Page 96
    8 Creating or updating an EDD from a DTD Once you have both a DTD and an EDD, you can refine the translation in an iterative process of developing read/write rules. First analyze the DTD and new EDD together to plan how to modify the translation with rules. Then develop at least some of your rules,
  • Adobe 65030365 | Developer's Guide - Page 97
    EDD if you want to keep the changes. Log files for a translated DTD If FrameMaker encounters any problems while starting or updating an EDD from a DTD, it produces a log file of warnings and errors. A file also includes a list of changes made to Structure Application Developer's Guide 79
  • Adobe 65030365 | Developer's Guide - Page 98
    .dtd; line 63 Parameter entity name longer than (NAMELEN-1); truncated The first line in the message gives the location of the problem in the DTD. The second line describes the problem; you can click this line to see a longer explanation. A log file is initially locked so that you can click in it
  • Adobe 65030365 | Developer's Guide - Page 99
    or Para (any number of any of these, including 0, in any order) Section (any number of these, including 0) FormatChangeListLimits (0 or 1 of these) Structure Application Developer's Guide 81
  • Adobe 65030365 | Developer's Guide - Page 100
    is not editable. The following list describes what the optional child elements are for and where you can find more discussion of them in this manual: • StructuredApplication: Specifies an SGML or XML application for the EDD and for documents that use the EDD. You need to type the name of the
  • Adobe 65030365 | Developer's Guide - Page 101
    for a side or run-in head Default variable for a system variable element Do not create formats when importing an EDD Element definition Structure Application Developer's Guide 83
  • Adobe 65030365 | Developer's Guide - Page 102
    8 The Element Catalog in an EDD Element tag ElementCatalog ElementPgfFormatTag Else ElseIf Equation Exclusion Family FirstIndent FirstIndentChange FirstIndentLimits FirstIndentRelative FirstParagraphRules FontSizeLimits Footnote FormatChangeList FormatChangeListLimits FormatChangeListTag
  • Adobe 65030365 | Developer's Guide - Page 103
    word spacing Initial equation size Specification for a limit on a value Minimum word spacing Relative change position for all tab stops Attribute name Structure Application Developer's Guide 85
  • Adobe 65030365 | Developer's Guide - Page 104
    8 The Element Catalog in an EDD Element tag NoAdditionalFormatting NoAutonumber OffsetHorizontal OffsetVertical Optimum Optional Outline Overline PairKerning Para ParagraphFormatTag ParagraphFormatting ParagraphSpacing PgfAlignment Placement Position Prefix PrefixRules PropertiesAdvanced
  • Adobe 65030365 | Developer's Guide - Page 105
    to an SGML application for an EDD Nested format rule Text string for a suffix Rules for a suffix Superscript or subscript text style Structure Application Developer's Guide 87
  • Adobe 65030365 | Developer's Guide - Page 106
    8 Defining preliminary settings in an EDD Element tag SystemVariable SystemVariableFormatRule TabAlignment Table TableBody TableCell TableFooting TableFormat TableHeading TableRow TableTitle TabStop TabStopPosition TabStopPositionLimits TabStops Tag TextFormatRules TextRangeFormatting Top
  • Adobe 65030365 | Developer's Guide - Page 107
    will export that table to the EDD, and the EDD will contain an ImportHTMLMapping element. For information on HTML mapping tables, see FrameMaker User Guide. Setting a structure application If you are working with XML or SGML, you need to specify which structure application to associate with the EDD
  • Adobe 65030365 | Developer's Guide - Page 108
    8 Organizing and commenting an EDD the application when you translate between a DTD and an EDD and when an end user shares documents between XML or SGML and FrameMaker. Important: The DTDs for SGML and XML are significantly different. For this reason you should always use XML structure
  • Adobe 65030365 | Developer's Guide - Page 109
    definition, begin by inserting an element called Element in ElementCatalog or in a Section. Then use the Element Catalog or the status bar as a guide as you type text and insert child elements to create a valid definition. Elements in FrameMaker fall into two basic groups: containers, tables, and
  • Adobe 65030365 | Developer's Guide - Page 110
    8 Writing element definitions • Containers, tables, and footnotes can have text format rules that specify font and paragraph formatting for text in the element and its descendants. Object elements can have an object format rule that specifies a single property, such as a marker type or an equation
  • Adobe 65030365 | Developer's Guide - Page 111
    . For a table, a tagging pattern that specifies the element tags assigned to the rows and cells an end user creates with a new table Structure Application Developer's Guide 93
  • Adobe 65030365 | Developer's Guide - Page 112
    8 Writing element definitions • Attribute definitions that specify attributes to store descriptive information with the element • Text format rules that determine how to format text in the element or its descendants • For a table, an object format rule that determines an initial table format for
  • Adobe 65030365 | Developer's Guide - Page 113
    in a different order. (For example, the element for highestlevel validity can go before or after the general rule.) Use the Element Catalog as a guide for inserting elements in a valid order. 1. Insert an Element element in the highest-level element of the EDD (ElementCatalog) or in a Section. Then
  • Adobe 65030365 | Developer's Guide - Page 114
    8 Writing element definitions If you do not specify a general rule, FrameMaker gives the element a default general rule that depends on the element's type. To use a default rule, leave the GeneralRule element empty (but do not delete GeneralRule or the definition will be invalid). These are the
  • Adobe 65030365 | Developer's Guide - Page 115
    information on the syntax of text format rules and how rules can be inherited from ancestors, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes," 9. (Optional) If the element is a that the group cannot extend across a line break. Structure Application Developer's Guide 97
  • Adobe 65030365 | Developer's Guide - Page 116
    a Rubi element are very much the same as the steps for defining a container, table, table part, or footnote element. Use the Element Catalog as a guide for inserting elements in a valid order. Refer to the chapters that follow for detailed descriptions of the syntax and more examples. Note that you
  • Adobe 65030365 | Developer's Guide - Page 117
    a formatting property, such as a marker type or equation size, for new instances of the element Examples These are definitions for object elements: Structure Application Developer's Guide 99
  • Adobe 65030365 | Developer's Guide - Page 118
    8 Writing element definitions Element (Marker): GlossaryTerm Initial marker type 1. In all contexts. Use marker type: Glossary Element (Graphic): Figure Initial graphic element format 1. If context is: Item < Procedure Insert imported graphic file. Else Insert anchored frame. Element (
  • Adobe 65030365 | Developer's Guide - Page 119
    the current element. Because object elements do not have descendants, the object rule is not passed on through a hierarchy to other elements. Structure Application Developer's Guide 101
  • Adobe 65030365 | Developer's Guide - Page 120
    8 Keyboard shortcuts for working in an EDD Insert an InitialObjectFormat or SystemVariableFormatRule element, and insert and define context elements as necessary. Define a formatting property for each context. For more information, see Chapter 12, "Object Format Rules." Keyboard shortcuts for
  • Adobe 65030365 | Developer's Guide - Page 121
    developer, you'll need to define the formats yourself. For advice on planning and designing the parts of a template, see the FrameMaker User Guide. Even after importing element definitions into a template, you will probably want to keep the EDD as a separate file for maintenance purposes. Structure
  • Adobe 65030365 | Developer's Guide - Page 122
    one. Log files for imported element definitions If FrameMaker encounters any problems while importing element definitions, it produces a log file of warnings to the EDD. You can click a message to go to the line with the problem in the EDD. A log file is initially locked so that you can click in it
  • Adobe 65030365 | Developer's Guide - Page 123
    and new DTD together to plan how to modify the translation with rules. Then develop at least some of your rules, update Structure Application Developer's Guide 105
  • Adobe 65030365 | Developer's Guide - Page 124
    defined for the element. FrameMaker writes other EDD constructs in various ways; for example, variables become entities and markers become processing instructions. Comments and Section and Para elements in the EDD become comments. Note that EDDs include more semantic information about the usage of
  • Adobe 65030365 | Developer's Guide - Page 125
    a description of the default SGML declaration and the variations that FrameMaker supports, see Appendix D, "SGML Declaration." If you need to reapply the EDD or the resulting DTD. An error indicates an actual problem in the processing; some errors can cause the processing to Developer's Guide 107
  • Adobe 65030365 | Developer's Guide - Page 126
    \ • For Macintosh: $FMHOME:Samples:FMSGML: $FMHOME:Samples:Templates:Structured: The FMSGML directory contains a commented EDD for this developer's guide and one structured document that uses the EDD. The Structured directory contains structured documents for outlines, reports, and viewgraphs
  • Adobe 65030365 | Developer's Guide - Page 127
    automatically in Rubi groups" on page 123 Information to help you correct errors in structure rules: • "Debugging structure rules" on page 123 Structure Application Developer's Guide 109
  • Adobe 65030365 | Developer's Guide - Page 128
    content rules. XML: The specification for XML does not support inclusions and exclusions. If an EDD uses inclusions and exclusions an element does not conform to the content rules, the Structure View identifies the problem. If an element is missing one or more child elements required in its general
  • Adobe 65030365 | Developer's Guide - Page 129
    level. For more information on the Structure View and validation, see the FrameMaker user's manual. Other optional structure rules are available to help you develop a convenient working environment for should not include any paragraph container elements. Structure Application Developer's Guide 111
  • Adobe 65030365 | Developer's Guide - Page 130
    9 Writing an EDD general rule Syntax of a general rule for EDD elements A general rule can list child element tags and content symbols, and it can use occurrence indicators, connectors, and parentheses to further describe the contents allowed. Occurrence indicators and connectors An occurrence
  • Adobe 65030365 | Developer's Guide - Page 131
    tag in the rule's syntax. You can use occurrence indicators and connectors with a group as you do with an individual element tag. Structure Application Developer's Guide 113
  • Adobe 65030365 | Developer's Guide - Page 132
    9 Writing an EDD general rule For example, this rule specifies that the element must begin with a Head, then it must have at least one Paragraph or one List element, and then it can have one or more optional Section elements: Head, (Paragraph | List)+, Section* Note that because of the plus sign
  • Adobe 65030365 | Developer's Guide - Page 133
    , table title, or table cell Rubi Group Rubi Default general rule TITLE?, HEADING?, BODY, FOOTING? ROW+ CELL+ , RUBI Structure Application Developer's Guide 115
  • Adobe 65030365 | Developer's Guide - Page 134
    Book General rule: Front, Chapter+, Index? Valid as highest-level element. Adding inclusions and exclusions XML: The specification for XML does not support inclusions and exclusions. If an EDD uses inclusions and exclusions, when you save the associated FrameMaker file to XML the software ignores
  • Adobe 65030365 | Developer's Guide - Page 135
    allowed in the context, even though it may be a valid inclusion. For example, the user cannot insert a table footnote between table rows Structure Application Developer's Guide 117
  • Adobe 65030365 | Developer's Guide - Page 136
    9 How content rules translate to markup data even though the footnote may be a valid inclusion in the table because table footnotes are allowed only in titles and cells. Exclusions To add an exclusion to an element definition, insert an Exclusion element anywhere after the general rule (or
  • Adobe 65030365 | Developer's Guide - Page 137
    ): List General rule: Item+ Automatic insertions Automatically insert child: Item and nested child: Para This is the structure of the new List: Structure Application Developer's Guide 119
  • Adobe 65030365 | Developer's Guide - Page 138
    9 Inserting table parts automatically in tables List Item Para You can specify multiple levels, but only one child element per level. Keep in mind that the autoinsertion rules from one element definition do not carry over to another. In the List and Item example above, even though the Item
  • Adobe 65030365 | Developer's Guide - Page 139
    the body defined above and specifies two body rows, the body in the new table has only a Region row and a State row. Structure Application Developer's Guide 121
  • Adobe 65030365 | Developer's Guide - Page 140
    9 Inserting table parts automatically in tables If an end user adds a row to an existing table by inserting a row element, the structure of the new row is based on the initial structure pattern of the parent heading, body, or footing. (But if the user adds a row by pressing Control-Return or by
  • Adobe 65030365 | Developer's Guide - Page 141
    element tags, content symbols, or symbols in any structure rule • A general rule that has ambiguous element tags or mixed connectors (For advice on avoiding these problems, see page 113.) Structure Application Developer's Guide 123
  • Adobe 65030365 | Developer's Guide - Page 142
    rule • An element used at the highest level in its flow that does not have a specification for highest-level validity If FrameMaker identifies any problems when you import an EDD, it produces a log file of warnings and errors. For information on how to work with this file, see "Log files
  • Adobe 65030365 | Developer's Guide - Page 143
    Rules for Containers, Tables, and Footnotes 10 You can define text formatting properties for containers, tables, table parts, and footnotes in FrameMaker. When paragraph format" on page 132 • "Writing context-dependent format rules" on page 132 Structure Application Developer's Guide 125
  • Adobe 65030365 | Developer's Guide - Page 144
    10 Overview of text format rules • "Defining the formatting changes in a rule" on page 143 • "Specifications for individual format properties" on page 146 Other format rules
  • Adobe 65030365 | Developer's Guide - Page 145
    10 How elements inherit formatting information Element (Container): Head General rule: Text format rules Element paragraph format: head 1. information from ancestors. This lets you control common formatting information in parent elements. Structure Application Developer's Guide 127
  • Adobe 65030365 | Developer's Guide - Page 146
    10 How elements inherit formatting information It is even possible to have only one paragraph format for an entire document. The format is associated with the
  • Adobe 65030365 | Developer's Guide - Page 147
    10 How elements inherit formatting information Element (Container): Section General rule: Head, (Para | List)+, Section* Text format rules Element element's format rule. They also have a bullet provided by an autonumber in their own definition. Structure Application Developer's Guide 129
  • Adobe 65030365 | Developer's Guide - Page 148
    10 How elements inherit formatting information Section format: body Section format: body left indent= +.5" Each Item Footnote Table Properties dialog box. For information on footnote paragraph formats, see the FrameMaker user's manual. Text Format Rules for Containers, Tables, and Footnotes 130
  • Adobe 65030365 | Developer's Guide - Page 149
    10 How elements inherit formatting information Inheritance in a document within a book In a document that is part of a book, FrameMaker searches through are not automatically applied to elements in the document. The user needs to update the book again. Structure Application Developer's Guide 131
  • Adobe 65030365 | Developer's Guide - Page 150
    10 Specifying an element paragraph format Specifying an element paragraph format An element definition can include a reference to a base paragraph format. If an instance of the
  • Adobe 65030365 | Developer's Guide - Page 151
    10 Writing context-dependent format rules defines contexts or levels, it can have separate if, else/if, and else clauses for different possibilities. the text in a TableHead element is in 14-pt boldface no matter where the element occurs in a document: Structure Application Developer's Guide 133
  • Adobe 65030365 | Developer's Guide - Page 152
    10 Writing context-dependent format rules Element (Table Head): TableHead General rule: TableHeadRow+ Text format rules 1. In all contexts. Default font properties Size: 14pt Weight: Bold
  • Adobe 65030365 | Developer's Guide - Page 153
    10 Writing context-dependent format rules formatting change if the current element is nested within two or more Section elements. (For a way to The last element in its parent Not the first element in its parent Not the last element in its parent Structure Application Developer's Guide 135
  • Adobe 65030365 | Developer's Guide - Page 154
    10 Writing context-dependent format rules Indicator {only} {before sibling} {after sibling} {between sibling1, sibling2} {any} Specification is true if the element is The only element
  • Adobe 65030365 | Developer's Guide - Page 155
    10 Writing context-dependent format rules for List and rely on attribute values to determine whether an instance of List is bulleted or numbered for the instance of the element. You must write rule clauses from the most specific to the most general. Structure Application Developer's Guide 137
  • Adobe 65030365 | Developer's Guide - Page 156
    10 Writing context-dependent format rules For example, suppose you want to apply a formatting change to an Item when it appears inside a nested List element (a List
  • Adobe 65030365 | Developer's Guide - Page 157
    10 Writing context-dependent format rules context rules Section < Section < Section means "nested in at least three Section elements," and in level rules : +0.5" The rule in this example is also applied to any Head and Para descendants of the Section. Structure Application Developer's Guide 139
  • Adobe 65030365 | Developer's Guide - Page 158
    10 Writing context-dependent format rules Stopping the count at an ancestor You can have FrameMaker stop counting when it reaches a particular element in the hierarchy.
  • Adobe 65030365 | Developer's Guide - Page 159
    10 Writing context-dependent format rules Element (Container): Item General rule: Text format rules 1. If context is: {first} < List[ autonumber format in different nesting levels. This shows the formatting changes described in a single rule: Structure Application Developer's Guide 141
  • Adobe 65030365 | Developer's Guide - Page 160
    10 Writing context-dependent format rules Element (Container): Head General rule: Text format rules 1. If context is: Section < Section Default font properties Weight: Bold Numbering
  • Adobe 65030365 | Developer's Guide - Page 161
    10 Defining the formatting changes in a rule To provide a context label in a format rule clause, insert a ContextLabel element after the If, ElseIf, context only. (It does not become the base format for the element and is not inherited by descendants.) Structure Application Developer's Guide 143
  • Adobe 65030365 | Developer's Guide - Page 162
    10 Defining the formatting changes in a rule Insert the element ParagraphFormatTag, and type the tag of the paragraph format. • Make changes to particular paragraph format properties.
  • Adobe 65030365 | Developer's Guide - Page 163
    10 Defining the formatting changes in a rule • Refer to a list of changes to properties stored elsewhere in the EDD. The changes in the a Head does not appear in this context. This clause is not necessary but makes the nested rule (1.1) more readable. Structure Application Developer's Guide 145
  • Adobe 65030365 | Developer's Guide - Page 164
    10 Specifications for individual format properties In some cases, you may also want to use the no-formatting option to improve the readability of a format rule.
  • Adobe 65030365 | Developer's Guide - Page 165
    10 Specifications for individual format properties formatting properties and guidelines on how to use them, see the FrameMaker user's manual. Basic properties The Basic properties set indentation, line spacing, paragraph alignment, the text column. Structure Application Developer's Guide 147
  • Adobe 65030365 | Developer's Guide - Page 166
    10 Specifications for individual format properties LineSpacing PgfAlignment keyword ParagraphSpacing FirstIndentRelative dimension Sets the left indent for the first line in a paragraph (relative to the left
  • Adobe 65030365 | Developer's Guide - Page 167
    10 Specifications for individual format properties SpaceAboveChange dimension Sets the space above a paragraph (added to the current space above). Type a to the tab stop. A positive value moves the tab stop right; a negative value moves it left. Structure Application Developer's Guide 149
  • Adobe 65030365 | Developer's Guide - Page 168
    10 Specifications for individual format properties MoveAllTabStopsBy real-number ClearAllTabStops TabAlignment keyword Sets left, center, right, or decimal alignment for tabbed text on a tab stop. Insert a
  • Adobe 65030365 | Developer's Guide - Page 169
    10 Specifications for individual format properties OffsetHorizontal real-number Moves a text range element. Type the percentage of an em space you want subscript. The text size and the amount of offset are determined by Text Options in the document. Structure Application Developer's Guide 151
  • Adobe 65030365 | Developer's Guide - Page 170
    10 Specifications for individual format properties Tracking real-number Sets the space between characters. Type a percentage of the font's em space. (The symbol % is optional.) A positive
  • Adobe 65030365 | Developer's Guide - Page 171
    10 Specifications for individual format properties StartPosition WidowOrphanLines and the building blocks available, see the FrameMaker user's manual. The following elements and values define the Numbering properties: specify the position. Structure Application Developer's Guide 153
  • Adobe 65030365 | Developer's Guide - Page 172
    10 Specifications for individual format properties Advanced properties The Advanced properties set hyphenation and word spacing options and determine whether to display a graphic with a paragraph. To
  • Adobe 65030365 | Developer's Guide - Page 173
    10 Specifications for individual format properties Minimum integer Sets margins and alignments work with table formats, see the FrameMaker user's manual. The following elements and values define the Table Cell properties: CellMargins Asian characters. Structure Application Developer's Guide 155
  • Adobe 65030365 | Developer's Guide - Page 174
    10 Writing first and last format rules AsianAsianSpacing Punctuation Minimum, Maximum, and Optimum Specifies the range of spacing percentages to use, and the optimum, or preferred,
  • Adobe 65030365 | Developer's Guide - Page 175
    10 Writing first and last format rules paragraph that happens to be the first or last child-so you need to define the special an element contains a single paragraph, and the first and last rules both specify an autonumber, only the first rule is used. Structure Application Developer's Guide 157
  • Adobe 65030365 | Developer's Guide - Page 176
    10 Defining prefixes and suffixes A first or last rule can also apply to a prefix -reference format or in the header or footer definition. For more information, see the FrameMaker user's manual. There are some similarities between the uses of first and last format rules, autonumber strings, and
  • Adobe 65030365 | Developer's Guide - Page 177
    10 Defining prefixes and suffixes When FrameMaker formats an element with a prefix or suffix, it applies format rules in this order: • The for the paragraph.) For example, you might use a prefix to display Important: at the beginning of a paragraph: Structure Application Developer's Guide 159
  • Adobe 65030365 | Developer's Guide - Page 178
    10 Defining prefixes and suffixes Element (Container): Note General rule: Prefix rules 1. In all contexts. Prefix: Important: If a paragraph element also has an autonumber, the
  • Adobe 65030365 | Developer's Guide - Page 179
    10 Defining prefixes and suffixes a prefix) or a last format rule (for a suffix). The prefix is the first paragraph in the parent, or the and suffix strings are in bold italics because they get their angle property (italics) from the text format rules. Structure Application Developer's Guide 161
  • Adobe 65030365 | Developer's Guide - Page 180
    10 When to use an autonumber, prefix or suffix, or first or last rule Attributes in a prefix or suffix rule You can refer to an attribute
  • Adobe 65030365 | Developer's Guide - Page 181
    10 Defining a format change list Here are a few cases in which you may want to use an autonumber, a prefix or suffix, or a first or a separate section in the EDD. For information on using sections, see "Organizing and commenting an EDD" on page 90. Structure Application Developer's Guide 163
  • Adobe 65030365 | Developer's Guide - Page 182
    10 Defining a format change list A format change list typically contains a general-purpose set of changes used by different kinds of elements. For example, this list changes
  • Adobe 65030365 | Developer's Guide - Page 183
    10 Setting minimum and maximum limits on properties values, you can also set your own limits. See "Setting minimum and maximum limits on properties you cannot extend it. These are the limits you can define and their built-in minimum and maximum values: Structure Application Developer's Guide 165
  • Adobe 65030365 | Developer's Guide - Page 184
    10 Debugging text format rules Set of limits FirstIndentLimits, LeftIndentLimits, or Designer (Format menu) • Character formats in the Character Designer (Format menu) If FrameMaker identifies any problems when you import an EDD, it produces a log file of warnings and errors. For information on
  • Adobe 65030365 | Developer's Guide - Page 185
    10 Debugging text format rules As you examine the formatted contents of the document, you can use the Show Element Context dialog box for a paragraph format or character format, select the format in the list on the right and click Display Designer. Structure Application Developer's Guide 167
  • Adobe 65030365 | Developer's Guide - Page 186
    10 Debugging text format rules Text Format Rules for Containers, Tables, and Footnotes 168
  • Adobe 65030365 | Developer's Guide - Page 187
    in some way. For example: • A security attribute in a memo element can tell the level of classification for the memo's contents (Security=Unclassified). Structure Application Developer's Guide 169
  • Adobe 65030365 | Developer's Guide - Page 188
    attribute in the Attributes dialog box. The dialog box shows information from the attribute definition-name, type, range or choices, and default value-to guide the user to enter values that are appropriate. If the user tries to enter a value that is not valid according to the definition, FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 189
    on the Structure View and how a user works with attributes, see the FrameMaker user's manual. Writing attribute definitions for an element To make attributes available for an element, you need to necessary. The definitions are numbered automatically. Structure Application Developer's Guide 171
  • Adobe 65030365 | Developer's Guide - Page 190
    , -1024 One or more integers (optionally restricted to a range of values) A real number (optionally restricted to a range of values), can use e notation to express 10 to the power of x; valid real numbers: 23, .23, 0.23, 2.3e-1, .023e+01 One or more real numbers (optionally restricted to a range of
  • Adobe 65030365 | Developer's Guide - Page 191
    by the attribute type, FrameMaker does not accept the value and displays an alert describing the problem. If the user enters an invalid value by other means (such as pasting), FrameMaker identifies have one, FrameMaker identifies the attribute as invalid. Structure Application Developer's Guide 173
  • Adobe 65030365 | Developer's Guide - Page 192
    FrameMaker user interface, you can still edit its value with a structure API client. For information on API clients, see the Structure Import/Export API Programmer's Guide. Attribute Definitions 174
  • Adobe 65030365 | Developer's Guide - Page 193
    is selected. If the end user tries to enter a value outside the range, FrameMaker does not accept the value and displays an alert describing the problem. If the user enters an invalid Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 194
    Using attributes to format elements" on page 180. For information on structure API clients, see the Structure Import/Export API Programmer's Guide. Using UniqueID and IDReference attributes A UniqueID attribute stores a string that uniquely identifies an instance of an element in a document or book
  • Adobe 65030365 | Developer's Guide - Page 195
    , suppose you define an IDReference for a Para container element. To keep track of information from another section in an instance of the Para, a user can manually enter the section's ID in the IDReference for Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 196
    11 Using UniqueID and IDReference attributes Para (using the Attributes dialog box). He or she can go to the source from the Para later by searching for the element with the ID. SGML: When importing and exporting between FrameMaker and SGML, the UniqueID and IDReference attributes are preserved.
  • Adobe 65030365 | Developer's Guide - Page 197
    element in FrameMaker. If you plan to use the element as a FrameMaker cross-reference, the element should be a cross-reference object element. Structure Application Developer's Guide 179
  • Adobe 65030365 | Developer's Guide - Page 198
    11 Using attributes to format elements In the attribute definition, insert an IDReference or IDReferences element after the Name element. For example: Element (CrossReference): XRef Attribute list 1. Name: Reference IDReference Required In a document, when an end user inserts a cross-reference
  • Adobe 65030365 | Developer's Guide - Page 199
    , if context is: [Type = "Examples"] Table format: Format B The value of the attribute (from the current element) determines a context for object formatting. Structure Application Developer's Guide 181
  • Adobe 65030365 | Developer's Guide - Page 200
    11 Using attributes to provide a prefix or suffix FrameMaker can use the default value of an attribute to determine context. In the Table example above, if Type is not specified for a table in a document, the table's initial format will be Format A (the format for the default value Summary). Note
  • Adobe 65030365 | Developer's Guide - Page 201
    . For more detailed information on attribute names in prefix and suffix definitions, see "Attributes in a prefix or suffix rule" on page 162. Structure Application Developer's Guide 183
  • Adobe 65030365 | Developer's Guide - Page 202
    11 Using attributes to provide a prefix or suffix Attribute Definitions 184
  • Adobe 65030365 | Developer's Guide - Page 203
    page 191 • "Setting a marker type" on page 192 • "Setting a cross-reference format" on page 194 • "Setting an equation size" on page 194 Structure Application Developer's Guide 185
  • Adobe 65030365 | Developer's Guide - Page 204
    12 Overview of object format rules • "Specifying a system variable" on page 195 Information to help you correct errors in format rules: • "Debugging object format rules" on page 197 Overview of object format rules An object element can have one format rule that specifies a formatting property for
  • Adobe 65030365 | Developer's Guide - Page 205
    formatting. For information on nested rules, context labels, and count statements in level rules, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes." All-contexts rules A format rule can In all contexts. Use equation size: Small Structure Application Developer's Guide 187
  • Adobe 65030365 | Developer's Guide - Page 206
    12 Context specifications for object format rules Context-specific rules A format rule can define one or more possible contexts, with a format for each context. The contexts are expressed in separate if, else/if, and else clauses. When applying a format rule to an element, FrameMaker uses the
  • Adobe 65030365 | Developer's Guide - Page 207
    an object format rule clause to more narrowly define context. For the context specification to be true, an instance of the element Structure Application Developer's Guide 189
  • Adobe 65030365 | Developer's Guide - Page 208
    12 S e t t i n g a t a b l e f o r m a t must have the attribute name and value specified. (If the element does not have an attribute value but the attribute is defined to have a default value, the default value is used.) When an end user inserts an object element that has an attribute in its
  • Adobe 65030365 | Developer's Guide - Page 209
    for text in descendant title and cell elements. For information on these format rules, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes." Specifying a graphic content type A graphic that he or she can provide information Structure Application Developer's Guide 191
  • Adobe 65030365 | Developer's Guide - Page 210
    , and let the end user select the one that suits his or her purpose. In this case, use descriptive element tags as a guide for the user: Element (Graphic): ImportGraphic Initial graphic element format 1. In all contexts. Insert imported graphic file. Element (Graphic): AnchFrame Initial graphic
  • Adobe 65030365 | Developer's Guide - Page 211
    location. Identifies the source of an entry for a standard index. Identifies markup entities and processing instructions. Identifies the source of an entry for an unspecified type of index or generated list, or the Marker window), and the change is not Structure Application Developer's Guide 193
  • Adobe 65030365 | Developer's Guide - Page 212
    12 Setting a cross-reference format regarded as a format rule override. If the user re-imports element definitions with "Remove Format Rule Overrides" on, the marker does not return to the type suggested by the EDD. Setting a cross-reference format A cross-reference format determines the wording
  • Adobe 65030365 | Developer's Guide - Page 213
    child element and then a nested child element to specify a variable, or insert a DefaultSystemVariable child element to use the FilenameLong variable. For example: Structure Application Developer's Guide 195
  • Adobe 65030365 | Developer's Guide - Page 214
    12 Specifying a system variable Element (System Variable): Date System variable format rule 1. If context is: TitlePageDate Use system variable: Current Date (Long) Else Use system variable: Current Date (Short) These are the system variables available: Variable CreationDateLong
  • Adobe 65030365 | Developer's Guide - Page 215
    in the Equations palette) • System variables in the Variable dialog box (Special menu) If FrameMaker identifies any problems when you import an EDD, it produces a log file of warnings and errors. For information on how has an arrow pointing to it. Structure Application Developer's Guide 197
  • Adobe 65030365 | Developer's Guide - Page 216
    12 Debugging object format rules The current element and its ancestors The format rule for the element selected on the left. An arrow identifies the clause that applies to the instance. If the selected element is a container, table title, table cell, or footnote, the scroll box on the right shows
  • Adobe 65030365 | Developer's Guide - Page 217
    using the material in this part. This part of the manual includes: • Chapter 13, "Introduction to Translating between Markup Data and Their Attributes" Chapter 17, "Translating Entities and Processing Instructions" Chapter 18, "Translating Tables" Chapter 19, "Translating Developer's Guide 199
  • Adobe 65030365 | Developer's Guide - Page 218
    • Chapter 25, "Read/Write Rules Summary" Contains a summary of the read/write rules provided for translating between various markup and FrameMaker constructs. • Chapter 26, "Read/Write Rules Reference" Contains an alphabetical list of reference material on all read/write rules. Translating between
  • Adobe 65030365 | Developer's Guide - Page 219
    read/write rules," next • "What you can do with structure API clients" on page 202 An example to illustrate these points: • "A detailed example" on page 203 Discussion of locking XML and FrameMaker files: • "Opening to the XML generic identifier ename. Structure Application Developer's Guide 201
  • Adobe 65030365 | Developer's Guide - Page 220
    13 What you can do with structure API clients Treating special characters In SGML and XML you can use an entity to represent special characters. You might use rules to translate such entities. XML: The XML specification establishes predefined character entities for reserved characters such as
  • Adobe 65030365 | Developer's Guide - Page 221
    can process attribute values, processing instructions, and some entity references encountered in be inserted into the XML or SGML document. This manual does not describe how to create a structure API client see the Structure Import/Export API Programmer's Guide. A detailed example To give you
  • Adobe 65030365 | Developer's Guide - Page 222
    13 A d e t a i l e d e x a m p l e This DTD fragment defines several
  • Adobe 65030365 | Developer's Guide - Page 223
    Head element specifies Head1 as the paragraph format if it occurs as the child of a single Section element and Head2 if it Structure Application Developer's Guide 205
  • Adobe 65030365 | Developer's Guide - Page 224
    13 A d e t a i l e d e x a m p l e occurs as the child of more than one Section element. The Item element bases it's formatting on the value of the Type attribute of the parent List element. Formatting and read/write rules When creating an EDD from a DTD, FrameMaker automatically generates most of
  • Adobe 65030365 | Developer's Guide - Page 225
    to open the autosave file for an XML document, perhaps after a system crash or power failure, you can save it as XML. Structure Application Developer's Guide 207
  • Adobe 65030365 | Developer's Guide - Page 226
    13 O p e n i n g X M L d o c u m e n t s • If you have enabled Network File Locking through File > Preferences > General, FrameMaker locks both FrameMaker and XML documents that you are editing to prevent other users from modifying files you have open. However, it uses different mechanisms for
  • Adobe 65030365 | Developer's Guide - Page 227
    body pages of the document. The document can be structured or unstructured and can use any element definitions or formatting properties desired. Structure Application Developer's Guide 209
  • Adobe 65030365 | Developer's Guide - Page 228
    and not its structure. Keywords in rules cannot include non-breaking hyphens. Important: Eight-bit characters, greater than 0x80, are not supported in filenames occurring within read/write rule files. For portability, avoid using those characters in filenames within read/write rule files. To
  • Adobe 65030365 | Developer's Guide - Page 229
    attribute rules are subrules of the element rule. The is fm attribute rule is a subrule of both the element and attribute rules. Structure Application Developer's Guide 211
  • Adobe 65030365 | Developer's Guide - Page 230
    . For example, the following are equivalent for rules in a structure application: fm version is "7.1"; FM Version is "7.1"; To improve readability, this manual sometimes uses mixed case for keywords. The case of FrameMaker element tags and other FrameMaker names is always significant. Thus, the
  • Adobe 65030365 | Developer's Guide - Page 231
    variable name. An example is the variable $(Entity). The following table illustrates the conventions for entering strings. The strings occur within a rule in more information on entities, see Chapter 17, "Translating Entities and Processing Instructions." Structure Application Developer's Guide 213
  • Adobe 65030365 | Developer's Guide - Page 232
    14 Comments Comments Comments can appear anywhere in a rules document where white space is permitted, except within quoted strings. Comments, like those in C code, are surrounded by the delimiters /* and */. Tables, graphics, and equations can appear within comments but are erroneous elsewhere in a
  • Adobe 65030365 | Developer's Guide - Page 233
    " on page 209. For information on adding a DTD file or rules document to an application, see "Defining an application" on page 53. Structure Application Developer's Guide 215
  • Adobe 65030365 | Developer's Guide - Page 234
    14 Commands for working with a rules document Read/Write Rules and Their Syntax 216
  • Adobe 65030365 | Developer's Guide - Page 235
    may not work on all browsers. For example, AcrossAllColumns and AcrossAllSideheads in an EDD translate to display:compact in CSS-this CSS statement is currently supported by the Opera6 browser, but not by NetScape Navigator 6.x or Internet Explorer 6.x. Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 236
    how FrameMaker translates them to CSS. The table also indicates any CSS statements that are not supported by a specific browser. The browsers to be noted in this list are NetScape Navigator version Language CSS statement Values (and comments) Browser support font-size ALL font-style ALL font-
  • Adobe 65030365 | Developer's Guide - Page 237
    and comments) UNSUPPORTED Browser support Property in EDD FirstIndent and IE may not support negative indents Padding and border margins set to zero Padding and border margins set to zero Browser support ALL ALL ALL :left/right Browser support ALL ALL OP OP NONE ALL
  • Adobe 65030365 | Developer's Guide - Page 238
    on the complexity of the autonumbering No equivalent in CSS-Generates char styles for element:before Always position autonums at the beginning Browser support ALL OP ALL Values (and comments) FrameAbove and FrameBelow translate as border lines, only-the actual graphic in the reference frame does
  • Adobe 65030365 | Developer's Guide - Page 239
    or FromTableFormatPlus-padding only supports Custom Browser support OP, NS ALL the paragraph format Browser support OP EDD selectors This fmcssattr="1"] ABC > XYZ[fmcssattr="1"] ABC > XYZ[fmcssattr="1"] XYZ + ABC ABC + XYZ Browser support (and comments) ALL NS, OP NS, OP NS NS, OP NS, OP NS, OP
  • Adobe 65030365 | Developer's Guide - Page 240
    ancestors named XYZ ABC XYZ XYZ stop counting at ancestor ABC If level is 2 Browser support (and comments) NS, OP ALL NS, OP NS, OP NS, OP NS, OP NS, OP NS, OP Supports up to 10 ancestors NS, OP Differences in translation The format rules in an EDD express some things in
  • Adobe 65030365 | Developer's Guide - Page 241
    EDD: If Xref < Para Then color = Blue Else color = Black the resulting CSS looks like: Para > Xref{color: blue} Xref {color = black;} Structure Application Developer's Guide 223
  • Adobe 65030365 | Developer's Guide - Page 242
    15 G e n e r a t i n g a C S S This will usually give appropriate results. There are circumstances when the EDD uses the order of processing to limit execution, which result in CSS that can't make the same distinction. For example, if the EDD includes: If Emphasis < Emphasis color = blue Else if
  • Adobe 65030365 | Developer's Guide - Page 243
    the generated stylesheet at the same location as the resulting XML document. • To have FrameMaker support EDD context selectors in the CSS via a reserved attribute, set AddFmCSSAttrToXml to Enable. • application, you can include the following elements. Structure Application Developer's Guide 225
  • Adobe 65030365 | Developer's Guide - Page 244
    15 G e n e r a t i n g a C S S Stylesheets The parent element for the CSS specification. It contains CssPreferences, RetainStyleSheetPIs, and XmlStylesheet elements. CssPreferences Specifies whether or not to generate a CSS, and whether to generate special attributes in the XML. It contains
  • Adobe 65030365 | Developer's Guide - Page 245
    • "Retaining content but not structure of an element" on page 238 • "Retaining structure but not content of an element" on page 239 Structure Application Developer's Guide 227
  • Adobe 65030365 | Developer's Guide - Page 246
    characters in element and attribute names" on page 26and "Specifying the character encoding for XML files" on page 68. SGML does not support double-byte characters in markup tokens. Translating model groups and general rules The general rule of a FrameMaker element uses a syntax based on SGML
  • Adobe 65030365 | Developer's Guide - Page 247
    a standard representation recognized by FrameMaker. For information on these attributes, see Chapter 18, "Translating Tables," and Chapter 19, "Translating Graphics and Equations." Structure Application Developer's Guide 229
  • Adobe 65030365 | Developer's Guide - Page 248
    or a DTD from an EDD, FrameMaker uses a default translation between attribute types and declared values. XML: XML does not support all the declared values that are supported in SGML. The following tables identify the declared values that are valid only in SGML. For XML, substitute these declared
  • Adobe 65030365 | Developer's Guide - Page 249
    unicode in names, see "Supported characters in element and attribute names" on page 26. If you create an EDD by importing an SGML DTD, you won't have trouble with illegal names. Any name that is legal in the SGML reference concrete syntax is legal in FrameMaker. However, if you create an SGML
  • Adobe 65030365 | Developer's Guide - Page 250
    EDD, you should not encounter problems with name length, but you will need to ensure the element and attribute names use only legal characters. Otherwise you will need to write rules to reflect the differences. Important: For importing and exporting XML, FrameMaker has limited support of double-byte
  • Adobe 65030365 | Developer's Guide - Page 251
    exporting the text of a paragraph, it ignores line breaks. It includes a space separating the two words on either side of a line break. Structure Application Developer's Guide 233
  • Adobe 65030365 | Developer's Guide - Page 252
    structure API clients, see theStructure Import/Export API Programmer's Guide. Renaming elements There are many reasons you may choose to elements on import and export. Important: Note that read/write rules do not support double-byte characters, so you cannot use rules to convert element names that
  • Adobe 65030365 | Developer's Guide - Page 253
    gi" attribute "attr" is fm attribute "fmattr"; Important: Note that read/write rules do not support double-byte characters, so you cannot use rules to convert attribute names that have double-byte characters. translating between markup and FrameMaker. You Structure Application Developer's Guide 235
  • Adobe 65030365 | Developer's Guide - Page 254
    for creating and formatting footnotes. Because FrameMaker maintains footnotes as elements, there is no problem when writing a FrameMaker document as markup data. A footnote element becomes an XML see the Structure Import/Export API Programmer's Guide. Translating Elements and Their Attributes 236
  • Adobe 65030365 | Developer's Guide - Page 255
    MyRubi Oyamoji Oyamoji text Rubi text Another typical representation of a Rubi group in markup is: Oyamoji text Structure Application Developer's Guide 237
  • Adobe 65030365 | Developer's Guide - Page 256
    FrameMaker does not support direct translation structure API clients, see the Structure Import/Export API Programmer's Guide. Changing the declared content of a markup element associated with element not to allow entity references, you must manually edit the DTD and change the declared content of
  • Adobe 65030365 | Developer's Guide - Page 257
    discard an element's content but retain its structure, use one of these rules: element "gi" reader drop content; element "gi" writer drop content; For example, assume your DTD has this element so, first write the rule: element "toc" reader drop content; Structure Application Developer's Guide 239
  • Adobe 65030365 | Developer's Guide - Page 258
    choices. You can require the end user to manually call the Generate command, or you can create an " on page 376, "drop content" on page 375, "reader" on page 453, and "writer" on page 467. For see the Structure Import/Export API Programmer's Guide. Discarding a markup or FrameMaker element You
  • Adobe 65030365 | Developer's Guide - Page 259
    on creating a structure API client, see the Structure Import/Export API Programmer's Guide. Discarding a markup or FrameMaker attribute If you use attributes in markup for purposes SGML: 10> Structure Application Developer's Guide 241
  • Adobe 65030365 | Developer's Guide - Page 260
    " on page 396. For information on writing format rules, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes." For information on structure API client, see the Structure Import/Export API Programmer's Guide. Specifying a default value for an attribute An attribute in markup
  • Adobe 65030365 | Developer's Guide - Page 261
    notation The possible values for fmtype are: string strings choice integer integers real-number real-numbers unique-id id-reference id-references Structure Application Developer's Guide 243
  • Adobe 65030365 | Developer's Guide - Page 262
    associated with cross-references. Since FrameMaker can automatically maintain these attribute values for your end users, you may choose not to let them manually modify the values. To specify an attribute to be read-only, use the following rule: attribute "attr" is fm read-only attribute ["fmattr
  • Adobe 65030365 | Developer's Guide - Page 263
    you may need to use read/write rules to rename attribute values. In addition, you must manually add the appropriate attribute-based format rules to your EDD. For example, assume you have these declarations to set the size on import of a markup document. Structure Application Developer's Guide 245
  • Adobe 65030365 | Developer's Guide - Page 264
    Equations." For information on writing format rules, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes." For information on creating a structure API, see the online manual Structure Import/Export API Programmer's Guide, included with the FDK. Translating Elements and Their
  • Adobe 65030365 | Developer's Guide - Page 265
    . These actions can be almost anything. By default, FrameMaker interprets a small number of processing instructions. It stores others in the document as markers-you can write an FDK client to process entities as FrameMaker reference elements" on page 263 Structure Application Developer's Guide 247
  • Adobe 65030365 | Developer's Guide - Page 266
    (PIs) for a small set of special cases on export. Similarly, on import it interprets only the same small set of processing instructions. It retains other PIs as markers and translates them back into PIs on export. FrameMaker preserves text entities that are references to external text files
  • Adobe 65030365 | Developer's Guide - Page 267
    is >. This section uses the XML specification to illustrate PI syntax. By default, FrameMaker creates processing instructions under the following circumstances: • When the exported a DOC PI marker on import, see "Processing instructions" on page 256.) Structure Application Developer's Guide 249
  • Adobe 65030365 | Developer's Guide - Page 268
    an entity reference, a PI entity, or a reference to a PI entity Where text is the marker text, the software exports DOC PI markers as processing instructions of this form: and for SGML it exports DOC Entity Reference markers as entity references of this form: &text; Note that you cannot
  • Adobe 65030365 | Developer's Guide - Page 269
    differently. The rest of this section describes how FrameMaker imports various entities and unknown processing instructions in the absence of rules or clients. Internal text entities XML: The XML specification (within the SGML reference delimiter set). Structure Application Developer's Guide 251
  • Adobe 65030365 | Developer's Guide - Page 270
    character data (CDATA) entities XML: The XML specification does not support CDATA entities-the following information pertains to SGML, only. Internal character data (SDATA) entities XML: The XML specification does not support SDATA entities-the following information pertains to SGML, only. However,
  • Adobe 65030365 | Developer's Guide - Page 271
    format. This character format distinguishes SDATA entity text from regular text and tells FrameMaker what type of entity to create on export. Structure Application Developer's Guide 253
  • Adobe 65030365 | Developer's Guide - Page 272
    graphic. For more information about using entity references in attributes to import graphic files, see Chapter 19, "Translating Graphics and Equations." Translating Entities and Processing Instructions 254
  • Adobe 65030365 | Developer's Guide - Page 273
    Subdocument (SUBDOC) entities XML: The XML specification does not support SUBDOC entities-the following information pertains to SGML, only. their own document type definitions and are validated accordingly. FrameMaker does not support SUBDOC entities. If you try to open an SGML document that uses
  • Adobe 65030365 | Developer's Guide - Page 274
    "MYSYS: pgbrk"> Unless PI entities correspond to one of the forms supported by FrameMaker (to represent books and book components), FrameMaker stores them uses the XML specification to illustrate PI syntax. As stated at the beginning of this chapter, processing instructions in XML or SGML provide
  • Adobe 65030365 | Developer's Guide - Page 275
    end?> FrameMaker aborts the import process when it encounters the
  • Adobe 65030365 | Developer's Guide - Page 276
    following sections. In brief, they are: For Special characters Parameter Literal "fm char:" Rule entity "ename" is fm char Page 260 Translating Entities and Processing Instructions 258
  • Adobe 65030365 | Developer's Guide - Page 277
    FrameMaker document as XML or SGML. To do so, you make the entity rule a subrule of a highest-level reader rule. For example, an SGML document might use a period entity for some instances of the period ( . ) SDATA "FM variable: Current Date (Long)"> Structure Application Developer's Guide 259
  • Adobe 65030365 | Developer's Guide - Page 278
    Long) appear. For information on updating variables, see the information about variables in the using manual for FrameMaker. You can choose to have this translation only happen on import of an fmchartag is an optional FrameMaker character tag. Translating Entities and Processing Instructions 260
  • Adobe 65030365 | Developer's Guide - Page 279
    , for providing commonly used special characters. FrameMaker includes copies of these entity sets and provides rules to handle them for your application. Structure Application Developer's Guide 261
  • Adobe 65030365 | Developer's Guide - Page 280
    default translation For information on how FrameMaker supports ISO public entities, see Appendix F, E, "Character Set Mapping," in this manual, and see the FrameMaker user's manual. Translating SDATA entities as FrameMaker text insets "; Translating Entities and Processing Instructions 262
  • Adobe 65030365 | Developer's Guide - Page 281
    the SDATA rule has the form: "fm ref: fmtag" The entity rule has the form: entity "ename" is fm reference element "fmtag"; Structure Application Developer's Guide 263
  • Adobe 65030365 | Developer's Guide - Page 282
    information on working with reference pages, see the FrameMaker using manual. When FrameMaker encounters references to the specified entity while importing of a paragraph. FrameMaker has options to update text insets manually or automatically whenever the user opens the document containing the text
  • Adobe 65030365 | Developer's Guide - Page 283
    select these text insets to change this setting through the user interface. An author can manually import markup fragments into a document as text insets. When exporting to markup, FrameMaker might inset is always the entire contents of a flow or file. Structure Application Developer's Guide 265
  • Adobe 65030365 | Developer's Guide - Page 284
    "ename" { is fm text inset "fname"; reformat as plain text; } entity "ename" { is fm text inset "fname"; retain source document formatting; } Translating Entities and Processing Instructions 266
  • Adobe 65030365 | Developer's Guide - Page 285
    on these rules, see "external data entity reference" on page 391 and "drop" on page 373. Translating ISO public entities For information on how FrameMaker supports ISO public entities, see Appendix F, "ISO Public Entities." Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 286
    see the information about hypertext documents in the FrameMaker User Guide. Creating book components from general entities You can break large Files as Books." Discarding unknown processing instructions By default, FrameMaker imports processing instructions it does not understand as markers of
  • Adobe 65030365 | Developer's Guide - Page 287
    Modifications to the default translation For more information on these rules, see "processing instruction" on page 451 and "drop" on page 373. Using entities for storing graphics general entities, see Chapter 19, "Translating Graphics and Equations." Structure Application Developer's Guide 269
  • Adobe 65030365 | Developer's Guide - Page 288
    17 Modifications to the default translation Translating Entities and Processing Instructions 270
  • Adobe 65030365 | Developer's Guide - Page 289
    can have arbitrary representations for tables. To support arbitrary table models, FrameMaker needs you to provide information in the form of read/write rules. FrameMaker supports the CALS table model in the sense a row or cell occurs in" on page 283 Structure Application Developer's Guide 271
  • Adobe 65030365 | Developer's Guide - Page 290
    18 D e f a u l t t r a n s l a t i o n • "Specifying which column a table cell occurs in" on page 284 • "Omitting explicit representation of table parts" on page 285 • "Creating parts of a table even when those parts have no content" on page 287 • "Specifying the ruling style for a table" on page
  • Adobe 65030365 | Developer's Guide - Page 291
    . The FrameMaker table model does not allow tables within tables. Because the software makes the CALS table element a container element, it can support multiple tgroup elements within the single table element. In practice, many markup documents that use the CALS table model use only a single tgroup
  • Adobe 65030365 | Developer's Guide - Page 292
    18 D e f a u l t t r a n s l a t i o n table element as a FrameMaker element of type table and to unwrap the tgroup element. If your structure application includes a FrameMaker template, the software accommodates this behavior without read/write rules. That is, if the definition of the Table
  • Adobe 65030365 | Developer's Guide - Page 293
    you can modify the default translation of tables. If you're translating CALS tables, the default behavior is probably mostly what you Structure Application Developer's Guide 275
  • Adobe 65030365 | Developer's Guide - Page 294
    18 Modifications to the default translation want. You'll use rules to make minor modifications such as renaming elements or changing the ruling style for a table. If you've got a different table model, you'll have to use rules more extensively to create the correspondence between markup and
  • Adobe 65030365 | Developer's Guide - Page 295
    by a double quotation mark (") as well as the in abbreviation. However, this convention is not supported for the column width formatting property. For example, 2" is invalid as an alternative to 2in. Columns to be consistent with the CALS model. Structure Application Developer's Guide 277
  • Adobe 65030365 | Developer's Guide - Page 296
    18 Modifications to the default translation Row type: whether the associated table row is a heading, footing, or body row, or the associated table cell occurs in a row of that type. Row ruling: whether the cells of a row should having rulings on their bottom sides. This attribute says only whether
  • Adobe 65030365 | Developer's Guide - Page 297
    use only the horizontal straddle and vertical straddle properties. The other straddle properties exist to support the alternatives available in the CALS model. For information on how to use the formatting rows. Additionally, you may choose to rename Structure Application Developer's Guide 279
  • Adobe 65030365 | Developer's Guide - Page 298
    18 Modifications to the default translation these elements. If you're using the CALS table model, you don't need to identify the table parts, but you may want to use different element names in FrameMaker. FrameMaker provides several rules for these purposes. If you include these rules, the
  • Adobe 65030365 | Developer's Guide - Page 299
    property rule can be used at highest level to set a default or within an element rule to be restricted to a single element. Structure Application Developer's Guide 281
  • Adobe 65030365 | Developer's Guide - Page 300
    18 Modifications to the default translation For example, you may have a markup element tab2 that represents tables with a 1-inch column followed by a 2-inch column. The tab2 element does not use an attribute for this information but you can translate tab2 to a FrameMaker table element as follows:
  • Adobe 65030365 | Developer's Guide - Page 301
    18 Modifications to the default translation For information on writing format rules, see Chapter 10, "Text Format Rules for Containers, Tables, and Footnotes." Working with colspecs and spanspecs element" on page 436, and "fm property" on page 399. Structure Application Developer's Guide 283
  • Adobe 65030365 | Developer's Guide - Page 302
    always to occur in a new row, you should use these rules: element "gi" { is fm table cell element; fm property column number value is "n"; reader start new row; } where gi is a generic identifier and n is an integer indicating the table column. Table columns are numbered starting with 1. For an
  • Adobe 65030365 | Developer's Guide - Page 303
    Element (Table Row): GlossaryHeadRow General rule: Label, Label Element (Table Cell): Label General rule: Element (Table Body): GlossaryBody General rule: GlossaryRow+ Structure Application Developer's Guide 285
  • Adobe 65030365 | Developer's Guide - Page 304
    18 Modifications to the default translation Element (Table Row): GlossaryRow General rule: Term, Definition Element (Table Cell): Term General rule: Text format rules 1. In all contexts. Default font properties Angle: Italic Element (Table Cell): Definition General rule: And you have
  • Adobe 65030365 | Developer's Guide - Page 305
    a title but if the table instance in markup does not include a title, then the software does not create a title for the table. Structure Application Developer's Guide 287
  • Adobe 65030365 | Developer's Guide - Page 306
    have the software create a special table part even if it has no content, use one of these rules: reader insert table title element "fmtag"; reader insert table heading element "fmtag"; reader insert table footing element "fmtag"; where fmtag is a FrameMaker element tag. For example, assume you have
  • Adobe 65030365 | Developer's Guide - Page 307
    reader "fm property" on page 399, "reader" on page 453, "insert table supports several ruling styles. To specify the ruling style for the entire table, you can use the following rule: reader this rule: reader table ruling style manual. For more information on these rules, see "reader" on page 453
  • Adobe 65030365 | Developer's Guide - Page 308
    vertical straddle "name"; In an element rule for a table row, you can use this rule: reader end vertical straddle "name1 . . . nameN"; reader end vertical straddle "name1 . . . nameN" before this row; where name identifies the element that starts a vertical straddle, and each namei is a previously
  • Adobe 65030365 | Developer's Guide - Page 309
    rule: RangeHeadRow Text format rules 1. In all contexts. Default font properties Weight: Bold Element (Table Row): RangeHeadRow General rule: Label, Label, Label Structure Application Developer's Guide 291
  • Adobe 65030365 | Developer's Guide - Page 310
    rule: And the following rules in your read/write rules document: element "range" { is fm table element; fm property columns value is "3"; reader insert table heading element "RangeHead"; } element "type" { is fm table cell element; fm property column number value is "1"; fm property row type
  • Adobe 65030365 | Developer's Guide - Page 311
    element" on page 435 • "is fm table part element" on page 436 • "fm property" on page 399 • "reader" on page 453 • "insert table part element" on page 410 • "end vertical straddle" on page 379 • "start vertical note - - ((#PCDATA | emphasis | code)+)> Structure Application Developer's Guide 293
  • Adobe 65030365 | Developer's Guide - Page 312
    General rule: ( | Emphasis | Code)+ The NoteTable table format can specify ruling that boxes the paragraph. For example, the EDD for this manual uses this technique to format important information such as the following: This boxed paragraph is implemented as a one-cell table. Using read/write
  • Adobe 65030365 | Developer's Guide - Page 313
    writing structure API clients, see theStructure Import/Export API Programmer's Guide. Rotating tables on the page In FrameMaker, you cannot directly specify the page. If you need to rotate tables, the FrameMaker User Guide manual suggests two approaches: you can have the table format start at the
  • Adobe 65030365 | Developer's Guide - Page 314
    18 Modifications to the default translation Translating Tables 296
  • Adobe 65030365 | Developer's Guide - Page 315
    list declarations for representing graphics and equations as elements. You can use read/write rules to support variations of the default representation, whether you start with an EDD or a DTD. In Specifying the data content notation on export" on page 313 Structure Application Developer's Guide 297
  • Adobe 65030365 | Developer's Guide - Page 316
    PICT (PICT) format or the Computer Graphics Metafile (CGM) format. If you have a document with a graphic in a file format that the software doesn't support, you can supply your own graphic filter to allow the graphic to be processed. You can have such a document regardless of whether you are
  • Adobe 65030365 | Developer's Guide - Page 317
    does not have a standard representation for graphics, there are some commonly used frameworks and FrameMaker provides support for two of them-the read/ write rules work well to modify them. If your element external data entity that is the actual graphic Structure Application Developer's Guide 299
  • Adobe 65030365 | Developer's Guide - Page 318
    19 D e f a u l t t r a n s l a t i o n or a CDATA attribute whose value is a filename containing the graphic. Other attributes can represent properties of the FrameMaker anchored frame in which the graphic sits inside a FrameMaker document. XML: The XML specification states that an external graphic
  • Adobe 65030365 | Developer's Guide - Page 319
    )--> sideways NMTOKEN #IMPLIED xoffset CDATA #IMPLIED yoffset CDATA #IMPLIED attribute_declarations_specific_to_this_graphic_element > Structure Application Developer's Guide 301
  • Adobe 65030365 | Developer's Guide - Page 320
    graphic or equation files, see "Creating graphic files on export" on page 306. For information on facets, see the FrameMaker user's manual. Graphic and equation elements have the same set of attributes describing common properties of anchored frames. Graphic elements have additional attributes for
  • Adobe 65030365 | Developer's Guide - Page 321
    value is 0. The nsoffset attribute is relevant only for anchored frames whose position attribute is one of sleft, sright, snear, or sfar. Structure Application Developer's Guide 303
  • Adobe 65030365 | Developer's Guide - Page 322
    graphics and for equations, the value is the width of the object. For more on these properties, see the FrameMaker User Guide for information about anchored frames. Other graphic properties Markup elements corresponding to graphic elements can have the following additional implied attributes: • alt
  • Adobe 65030365 | Developer's Guide - Page 323
    value is assumed to represent a number. If not supplied, the value is 6.0pt. For more on these properties, see the FrameMaker User Guide for information about importing graphics. Exporting entity declarations When importing a markup document, use read/write rules to import markup elements as graphic
  • Adobe 65030365 | Developer's Guide - Page 324
    19 D e f a u l t t r a n s l a t i o n On export to markup, the software ensures the appropriate entities are in the document instance as follows. Unless otherwise specified, this table assumes the graphic element's declaration in markup includes an entity attribute: If: The graphic filename and
  • Adobe 65030365 | Developer's Guide - Page 325
    file for import and export under most circumstances. For information about exporting entity declarations, see "Exporting entity declarations" on page 305. For Structure Application Developer's Guide 307
  • Adobe 65030365 | Developer's Guide - Page 326
    . If the file is in a format the software does not support, you may be able to add a filter to support that format. For information on the graphic filters included with the software and on how to add a new one, see the online manual about using filters for Frame products. If the graphic is
  • Adobe 65030365 | Developer's Guide - Page 327
    } } element "gi" { is fm graphic element ["fmtag"]; writer facet "facet" { subrules } } element "gi" { is fm graphic element ["fmtag"]; writer anchored frame { subrules } } Structure Application Developer's Guide 309
  • Adobe 65030365 | Developer's Guide - Page 328
    19 Modifications to the default translation where gi is a generic identifier, fmtag is an optional FrameMaker element tag, subrules are described later, and facet is a graphic facet. Use the first of these constructions to specify how the software exports an equation element under all
  • Adobe 65030365 | Developer's Guide - Page 329
    . For information on using the FDK to manipulate equations, see the FDK Programmer's Guide. For information on writing structure API clients, see the Structure Import/Export API Programmer's Guide. Renaming markup attributes that correspond to graphic properties FrameMaker represents properties of
  • Adobe 65030365 | Developer's Guide - Page 330
    19 Modifications to the default translation With this rule, other elements can use the h attribute for different purposes. In both of these examples, the software creates an EDD from a DTD without creating an attribute that corresponds to the h attribute. When importing or exporting markup
  • Adobe 65030365 | Developer's Guide - Page 331
    element tag; type is one of the keywords anchored frame, facet, or equation; name is a facet name you supply only if type Structure Application Developer's Guide 313
  • Adobe 65030365 | Developer's Guide - Page 332
    19 Modifications to the default translation is facet; and notation_name is the data content notation in the corresponding markup entity declaration. For example, assume you have this rule: element "graphic" { is fm graphic element; writer { facet "XWD" { notation is "xwd"; export to file "$(
  • Adobe 65030365 | Developer's Guide - Page 333
    attribute" on page 414 • "element" on page 376 • "is fm graphic element" on page 422 • "is fm equation element" on page 420 Structure Application Developer's Guide 315
  • Adobe 65030365 | Developer's Guide - Page 334
    , see "Supported graphic file formats" on page 298. For information on which graphic export filters the software provides and on how to add new ones, see the online manual that describes using filters with FrameMaker products. Once you are sure that the software can export your format of choice
  • Adobe 65030365 | Developer's Guide - Page 335
    . Writes a graphic file named fname.pic. It also creates an SGML graphic element with fname as the value of the file attribute. Structure Application Developer's Guide 317
  • Adobe 65030365 | Developer's Guide - Page 336
    19 Modifications to the default translation For a graphic element: Created in the FrameMaker document by the author... On export to markup the software: Writes a graphic file named graphic1.pic (graphic2.pic, graphic3.pic, etc.). It also creates a graphic element in markup with graphic1 as the
  • Adobe 65030365 | Developer's Guide - Page 337
    points). The general form of this rule is: element "gi" { is fm graphic_or_equation element ["fmtag"]; writer type ["name"] specify size in units; } Structure Application Developer's Guide 319
  • Adobe 65030365 | Developer's Guide - Page 338
    19 Modifications to the default translation where gi is a generic identifier; graphic_or_equation is one of the keywords graphic or equation; fmtag is an optional FrameMaker element tag; type is one of the keywords anchored frame, facet, or equation; name is a facet name you supply only if type is
  • Adobe 65030365 | Developer's Guide - Page 339
    a source, in the same document or a different document. While markup does not explicitly support cross-references, it does provide the declared values ID, IDREF, and IDREFS for attributes; FrameMaker document, or FrameMaker book, FrameMaker automatically Structure Application Developer's Guide 321
  • Adobe 65030365 | Developer's Guide - Page 340
    FrameMaker book are considered external. For example, assume your FrameMaker book, manual.book, contains the files ch1.fm and ch2.fm and that there is external cross-reference in ch1.fm to ch2.fm. When you export manual.book to markup, it creates one document instance and the external crossreference
  • Adobe 65030365 | Developer's Guide - Page 341
    , see "Using UniqueID and IDReference attributes" on page 176 of this manual and see the FrameMaker and FrameMaker user's manuals. On import to FrameMaker When creating an EDD from a DTD, FrameMaker as that of the URI of the cross-reference source. Structure Application Developer's Guide 323
  • Adobe 65030365 | Developer's Guide - Page 342
    -references, see "Crossreferences" on page 356. For information on writing structure API clients, see Structure Import/Export API Programmer's Guide. Translating markup elements as FrameMaker cross-reference elements You can identify which markup elements correspond to FrameMaker cross-reference
  • Adobe 65030365 | Developer's Guide - Page 343
    " on page 376, "attribute" on page 367, "is fm property" on page 424, and "is fm cross-reference element" on page 418. Structure Application Developer's Guide 325
  • Adobe 65030365 | Developer's Guide - Page 344
    For example, suppose the source of an external crossreference is an element with its ID attribute set to BAAHDJJE that occurs in the file c:\myproject\manual\intro.fm. If the name of the cross-reference element is xref and the cross-reference format is not exported, by default FrameMaker exports the
  • Adobe 65030365 | Developer's Guide - Page 345
    in the srcfile attribute to .xml and exports the cross-reference as: You can save the source file to XML before or after saving the original file cannot be opened. Disable is the default. Structure Application Developer's Guide 327
  • Adobe 65030365 | Developer's Guide - Page 346
    20 Modifications to the default translation Translating Cross-References 328
  • Adobe 65030365 | Developer's Guide - Page 347
    . For more information on entities, see Chapter 17, "Translating Entities and Processing Instructions." In this chapter This chapter starts by describing FrameMaker's default translation of variables. name of the insured person for a particular policy. Structure Application Developer's Guide 329
  • Adobe 65030365 | Developer's Guide - Page 348
    FrameMaker variables and system variable elements, see the FrameMaker user's manual. On export to markup FrameMaker translates a system variable element as its treatment of non-element variables on the variable text. Unless instructed otherwise, it translates a user variable to a reference to an
  • Adobe 65030365 | Developer's Guide - Page 349
    on FrameMaker's treatment of entities, see Chapter 17, "Translating Entities and Processing Instructions." On import to FrameMaker By default, FrameMaker does not create system variable elements when clients, see the Structure Import/Export API Programmer's Guide. Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 350
    21 Modifications to the default translation Renaming or changing the type of entities when translating to variables By default, FrameMaker converts non-element system variables and user variables to entity references. You can change the name of the entity to use for a variable with the entity rule
  • Adobe 65030365 | Developer's Guide - Page 351
    tag for a system variable element. For more information on these rules, see "fm element" on page 397 and "unwrap" on page 461. Structure Application Developer's Guide 333
  • Adobe 65030365 | Developer's Guide - Page 352
    21 Modifications to the default translation Translating FrameMaker variables as SDATA entities For SGML, you can translate FrameMaker variables as SDATA entities by using the entity rule or by manipulating parameter literals. For information on how to do so, see "Translating entities as FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 353
    types have special default translations. • DOC PI markers store information about some processing instructions, and DOC Entity Reference markers store information about entity references. For information on this marker elements or as non-element markers. Structure Application Developer's Guide 335
  • Adobe 65030365 | Developer's Guide - Page 354
    , the examples of PIs in this section use the XML syntax. FrameMaker exports non-element markers, other than those of Type DOC PI, as processing instructions of the following form: where type is the marker type and text is the marker text. For example, FrameMaker exports an
  • Adobe 65030365 | Developer's Guide - Page 355
    import the document to FrameMaker. Also, by default FrameMaker imports some entity references and processing instructions as non-element markers. For information on when this happens, see Chapter 17, " " on page 376 and "marker text is" on page 444. Structure Application Developer's Guide 337
  • Adobe 65030365 | Developer's Guide - Page 356
    22 Modifications to the default translation Using markup attributes and FrameMaker properties to identify markers When translating FrameMaker marker elements to markup elements, by default FrameMaker uses the markup attributes type and text. These correspond, respectively, to the FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 357
    " is processing instruction; fm marker "Hypertext" is processing instruction; fm marker " is processing instruction; fm marker "Hypertext" is processing instruction; then FrameMaker instruction" on page 441. For information on writing FDK clients, see FDK Programmer's Reference, an online manual
  • Adobe 65030365 | Developer's Guide - Page 358
    22 Modifications to the default translation Translating Markers 340
  • Adobe 65030365 | Developer's Guide - Page 359
    as needed. For information on working with conditional text, see the FrameMaker User Guide. When FrameMaker exports a structured document to SGML, it exports shown conditional text FrameMaker therefore uses processing instructions to represent conditional text in XML. Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 360
    is one of the keywords hide or show to indicate the show/hide status of the condition tag For example, the following processing instructions define conditions tagged Summer and Winter: Conditional text
  • Adobe 65030365 | Developer's Guide - Page 361
    start-tag for the book component. FrameMaker exports all conditional text, with surrounding processing instructions, regardless of whether the conditional text is shown or hidden. When hidden conditional text usage in your environment, you might want to Structure Application Developer's Guide 343
  • Adobe 65030365 | Developer's Guide - Page 362
    that conforms to the permitted structure. At the same time, it supports export of hidden conditional text to valid XML. On import to FrameMaker When FrameMaker opens an XML document containing processing instructions for conditional text, it sets condition settings according to the encountered
  • Adobe 65030365 | Developer's Guide - Page 363
    23 Modifications to the default translation After you edit the application definition file, use File > Structure Tools > Read Application Definitions or restart FrameMaker to enable the option you select. Structure Application Developer's Guide 345
  • Adobe 65030365 | Developer's Guide - Page 364
    23 Modifications to the default translation Translating Conditional Text 346
  • Adobe 65030365 | Developer's Guide - Page 365
    : • "On import to FrameMaker" on page 348 • "On export to markup" on page 350 Some ways you can change the default translation: Structure Application Developer's Guide 347
  • Adobe 65030365 | Developer's Guide - Page 366
    in SGML, . This section uses the XML specification to illustrate PI syntax. To instruct FrameMaker to generate a book, you can place the following processing instruction before the start-tag of the document element of a markup document: The book processing
  • Adobe 65030365 | Developer's Guide - Page 367
    the next element. Since this starttag appears after the processing instruction, the end-tag generates an error in the log file. be represented as: In FrameMaker this SGML structure appears as: Manual Front
  • Adobe 65030365 | Developer's Guide - Page 368
    these additional files. FrameMaker also produces the processing instructions that allow it to recreate the original book On export, FrameMaker generates this SGML document for that structure:
  • Adobe 65030365 | Developer's Guide - Page 369
    the appropriate document processing instruction. Thus, the entity bkc2 book is with the processing instructions described above. However, you FrameMaker, you can use this rule: reader generate book put element "gi" in use these rules: reader generate book { put element "section" in
  • Adobe 65030365 | Developer's Guide - Page 370
    fname"]; For example, if you want FrameMaker to create a book only if the document element is reference or manual, you can use this rule: reader generate book for doctype "reference", "manual" { put element "section" in file "Sect"; put element "chapter" in file; } With this rule, if you import this
  • Adobe 65030365 | Developer's Guide - Page 371
    ; it does not create a separate book file. For information on these rules, see "reader" on page 453, "generate book" on page 403, and "output book processing instructions" on page 447. Suppressing the creation of processing instructions for a book on export By default, FrameMaker creates processing
  • Adobe 65030365 | Developer's Guide - Page 372
    24 Modifications to the default translation Processing Multiple Files as Books 354
  • Adobe 65030365 | Developer's Guide - Page 373
    , attributes, books, entities, cross-references, footnotes, equations, markers, graphics, processing instructions, markup documents, tables, text, text insets, and variables. All Elements To Translate FrameMaker attribute drop Page 367 396 414 376 373 Structure Application Developer's Guide 355
  • Adobe 65030365 | Developer's Guide - Page 374
    value is fm value value implied value is Page 424 426 439 464 406 Books To Specify whether to use elements or processing instructions to indicate book components when reading a markup document Specify elements to use to indicate book components when reading a markup document Specify the use
  • Adobe 65030365 | Developer's Guide - Page 375
    454 455 456 373 Equations To Translate a markup element to a FrameMaker equation element Use this rule is fm equation element Page 420 Structure Application Developer's Guide 357
  • Adobe 65030365 | Developer's Guide - Page 376
    25 F oo t no t es To Use this rule Specify export information for translating equation FrameMaker equations Specify the filename used for exporting an export to file equation Determine the form of names of entities created for exported equations entity name is Specify the data content
  • Adobe 65030365 | Developer's Guide - Page 377
    FrameMaker property or a choice attribute value Markers To Use this rule Discard FrameMaker non-element markers fm marker or translate them to processing instructions Translate a markup element to a FrameMaker marker element is fm marker element Page 394 389 372 383 445 456 399 399 424 426
  • Adobe 65030365 | Developer's Guide - Page 378
    a choice attribute value Page 444 391 451 441 373 399 399 424 426 439 464 Processing instructions To Specify the treatment of unrecognized processing instructions Specify the use of processing instructions to indicate book components when reading a markup document Specify whether or not to write
  • Adobe 65030365 | Developer's Guide - Page 379
    25 M a r k u p d o c u m e n t s To Discard processing instructions Use this rule drop Page 373 Markup documents To Use this rule Specify whether or not to use an proportional widths is fm property Page 435 436 410 458 460 379 461 452 463 424 Structure Application Developer's Guide 361
  • Adobe 65030365 | Developer's Guide - Page 380
    25 Text To Translate a value for a markup attribute to a FrameMaker property value Translate a value of a markup notation attribute or name token group to a value for a FrameMaker choice attribute Translate a attribute's name token value to a FrameMaker property or choice value Use this rule is fm
  • Adobe 65030365 | Developer's Guide - Page 381
    25 Text To Determine treatment of FrameMaker nonelement variables Translate a FrameMaker system variable element to text in markup Discard nonelement variables Use this rule fm variable fm element unwrap drop Page 402 397, 461 373 Structure Application Developer's Guide 363
  • Adobe 65030365 | Developer's Guide - Page 382
    25 Text Read/Write Rules Summary 364
  • Adobe 65030365 | Developer's Guide - Page 383
    supplied. Examples Various examples of the rule. See also Cross-references to other relevant information in the manual. For information on how to create an s rules file and on the syntax of rules, see Chapter about the file FrameMaker creates to Structure Application Developer's Guide 365
  • Adobe 65030365 | Developer's Guide - Page 384
    26 a n c h o r e d f r a m e contain the external data entity-for instances that are not anchored frames containing only a single imported graphic object. Synopsis and contexts element "gi" { is fm graphic element ["fmtag"]; writer anchored frame subrule; . . .} Arguments gi A generic identifier
  • Adobe 65030365 | Developer's Guide - Page 385
    treatment of the attribute attr within the element gi. Synopsis and contexts 1. [structdv] attribute "attr" {. . . subrule; . . .} 2. element "gi" {. . . [structdv] attribute "attr" {. . . subrule; Structure Application Developer's Guide 367
  • Adobe 65030365 | Developer's Guide - Page 386
    26 at tr i b u t e Arguments structdv An optional markup declared value, specifying the type of the markup attribute. Legal values are: cdata, name, names, nmtoken, nmtokens, number, numbers, nutoken, nutokens, entity, entities, notation, id, idref, idrefs, and group. attr The name of a markup
  • Adobe 65030365 | Developer's Guide - Page 387
    ISOLatin encoding with an XML document, then you may need to use this rule to map characters. Synopsis and contexts 1. character map is cmap1 [, . . ., cmapn]; 2. reader character map is cmap1 [, . . ., cmapn]; 3. writer character map is cmap1 [, . . ., cmapn]; Structure Application Developer
  • Adobe 65030365 | Developer's Guide - Page 388
    character map rule. You can only have one occurrence of this rule at the highest level. Similarly, the character map rule can appear in one reader rule and one writer rule at most. The software ignores any subsequent uses of the character map rule. • If you use the character map rule
  • Adobe 65030365 | Developer's Guide - Page 389
    to change the processing of trapped characters. For information on creating an structure API client, see the Structure Import/Export API Programmer's Guide. Examples • Both the FrameMaker and default SGML character sets have a character code for the character ó (lowercase o with an acute accent). In
  • Adobe 65030365 | Developer's Guide - Page 390
    26 convert referenced graphics See also • For information on the FrameMaker character set, see the FrameMaker user's manual. • For details of the default mapping between the FrameMaker and ISO Latin-1 character sets, see Appendix E, "Character Set Mapping." convert referenced graphics Use the
  • Adobe 65030365 | Developer's Guide - Page 391
    "include sgml declaration" on page 409. do not output book processing instructions See "output book processing instructions" on page 447. drop Use the drop rule to indicate information "gi" drop; 3. element "gi" {. . . attribute "attr" drop; . . .} Structure Application Developer's Guide 373
  • Adobe 65030365 | Developer's Guide - Page 392
    both drop an attribute and translate it to a FrameMaker property with the is fm property rule. Examples • A markup element used instead of a processing instruction to indicate that a page or line break is desired may be discarded when the markup document is read. Text formatting Read/Write Rules
  • Adobe 65030365 | Developer's Guide - Page 393
    processing instructions that instruction, when you save the FrameMaker document back to markup, the software writes out the processing instruction instructions, you could use this rule: processing instruction page 402 "processing instruction" on page 451 fmtag"; reader drop content;
  • Adobe 65030365 | Developer's Guide - Page 394
    "unwrap" on page 461 Rules mentioned in synopses "element" on page 376 "reader" on page 453 "writer" on page 467 General information Chapter 16, "Translating Elements Attributes" on this topic Structure Import/Export API Programmer's Guide element You use the element rule as the primary rule
  • Adobe 65030365 | Developer's Guide - Page 395
    marker element. is fm spanspec, page HIDDEN, specifies that the element represents a CALS table spanspec. This subrule applies only to CALS tables. Structure Application Developer's Guide 377
  • Adobe 65030365 | Developer's Guide - Page 396
    443, determines whether to interpret line breaks in text segments in elements in the markup document as forced returns or spaces within the elements. reader start new row, page 458, indicates that the occurrence of the associated table cell element always starts a new row in the table. This subrule
  • Adobe 65030365 | Developer's Guide - Page 397
    straddle started by some earlier table cell element. The straddle can end either before the current row or at the current row. Structure Application Developer's Guide 379
  • Adobe 65030365 | Developer's Guide - Page 398
    26 e n d v e r t i c a l s t r a d d l e Synopsis and contexts element "gi" { is fm table row_or_cell element ["fmtag"]; reader end vertical straddle "name1" [, . . . "namen"] [before this row]; . . .} Arguments gi A generic identifier. row_or_cell One of the keywords: row or cell. fmtag A
  • Adobe 65030365 | Developer's Guide - Page 399
    the resulting document. Synopsis and contexts 1. entity "ename" { type_rule; [format_rule;] . . .} 2. reader entity "ename" { type_rule; [format_rule;] . . .} Arguments ename An entity name. type_rule One of through the File>ImportFile menu: 1. Structure Application Developer's Guide 381
  • Adobe 65030365 | Developer's Guide - Page 400
    it applies both on import and export. If you use it inside a reader rule, then FrameMaker translates the entity as specified when importing a markup document, text Developer's Guide. However, if a FrameMaker variable named Manual Name, defined for example as My Favorite Manual, currently exists
  • Adobe 65030365 | Developer's Guide - Page 401
    source document formatting; } See also General information Chapter 17, "Translating Entities and Processing Instructions" on this topic Chapter 21, "Translating Variables and System Variable Elements" entity name is if and only if type is facet. Structure Application Developer's Guide 383
  • Adobe 65030365 | Developer's Guide - Page 402
    26 e n t i t y n a m e i s ename A string representing the base name for an entity name. Details • By default, when FrameMaker exports an external data entity for a graphic or equation, it uses the entity name that is stored with the graphic inset. If there is no such entity name, the software
  • Adobe 65030365 | Developer's Guide - Page 403
    the data content notation of the entity file. specify size in, page 456, specifies the units to use when writing the file. Structure Application Developer's Guide 385
  • Adobe 65030365 | Developer's Guide - Page 404
    26 eq u a tio n Examples • Assume you have an element named math with an attribute of type Entity that is mapped to the fm property entity for this element. If you want to create TIFF files for the equations in a document named mytest.doc, you might use this rule: element "math" { is fm equation
  • Adobe 65030365 | Developer's Guide - Page 405
    initialization file for a graphics filter specifies a dpi setting that setting overrides this rule whenever that filter is used to export a graphic file. Structure Application Developer's Guide 387
  • Adobe 65030365 | Developer's Guide - Page 406
    26 e x p o r t d p i i s Examples • Assume you export the FrameMaker file Math.doc and have the following rule: element "eqn" { is fm equation element "Equation"; writer equation export dpi is 72; } When FrameMaker finds an instance of the Equation element, it exports equations as graphic files at
  • Adobe 65030365 | Developer's Guide - Page 407
    the output directory. Note: If path information is included in fname, the Windows platform requires double backslashes to translate correctly as path Structure Application Developer's Guide 389
  • Adobe 65030365 | Developer's Guide - Page 408
    26 e x p o r t t o f i l e backslashes. The fname argument can contain the variables $(docname) and $(entity), described below. format A file data content format code, such as TIFF or PICT. See Chapter 19, "Translating Graphics and Equations," for a complete list of graphic format codes. format
  • Adobe 65030365 | Developer's Guide - Page 409
    , FrameMaker stores such references as the marker text in non-element Entity Reference markers. Synopsis and contexts external data entity reference drop; Structure Application Developer's Guide 391
  • Adobe 65030365 | Developer's Guide - Page 410
    data entity reference drop; See also Rules mentioned in "drop" on page 373 synopses General information Chapter 17, "Translating Entities and Processing Instructions" on this topic external dtd Use this rule to specify how an exported markup instance refers to the current structure application's DTD
  • Adobe 65030365 | Developer's Guide - Page 411
    the path with the filename, you could use this rule: writer external dtd is system "/doc/dtds/manuals.dtd"; Note that path information is system specific. The Windows platform requires two backslashes in paths in the is an entity in the strictest sense. Structure Application Developer's Guide 393
  • Adobe 65030365 | Developer's Guide - Page 412
    26 facet See also Related rules "include dtd" on page 408 "include sgml declaration" on page 409 "write structured document" on page 466 "write structured document instance only" on page 466 Rules mentioned in "writer" on page 467 synopses facet Use the facet rule only in an element rule for a
  • Adobe 65030365 | Developer's Guide - Page 413
    "is fm graphic element" on page 422 "writer" on page 467 General information Chapter 19, "Translating Graphics and Equations" on this topic Structure Application Developer's Guide 395
  • Adobe 65030365 | Developer's Guide - Page 414
    an attribute that you've defined for a FrameMaker element but that does not exist on the corresponding markup element. Read/write rules do not support double-byte characters, so you cannot use this rule to drop attributes with double-byte characters in their names. Synopsis and contexts 1. fm
  • Adobe 65030365 | Developer's Guide - Page 415
    on export with FrameMaker elements that do not correspond to markup elements. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters in you need to write a structure API client. Structure Application Developer's Guide 397
  • Adobe 65030365 | Developer's Guide - Page 416
    for external data entities.) In the absence of a rule to the contrary, the software creates processing instructions for non-element markers. You can also choose to discard them. Read/write rules do not support double-byte characters, so you cannot use this rule to process markers with double-byte
  • Adobe 65030365 | Developer's Guide - Page 417
    element" on page 423 Rules mentioned in "drop" on page 373 synopses "is processing instruction" on page 441 General information Chapter 22, "Translating Markers" on this topic fm property You type ["fmtag"]; fm property prop value is val;. . . .} Structure Application Developer's Guide 399
  • Adobe 65030365 | Developer's Guide - Page 418
    26 f m p r o p e r t y Arguments prop gi A FrameMaker property. Possible properties are: • For cross-reference elements: cross-reference format. • For graphic and equation elements: entity, file, dpi, import size, import by reference or copy, sideways, import angle, horizontal offset, vertical
  • Adobe 65030365 | Developer's Guide - Page 419
    on this topic Chapter 19, "Translating Graphics and Equations" Chapter 18, "Translating Tables" Chapter 20, "Translating Cross-References" Chapter 22, "Translating Markers" Structure Application Developer's Guide 401
  • Adobe 65030365 | Developer's Guide - Page 420
    you do not want them translated to entities. Read/write rules do not support double-byte characters, so you cannot use this rule to process variables with topic Chapter 17, "Translating Entities and Processing Instructions" Chapter 21, "Translating Variables and System Variable Elements"
  • Adobe 65030365 | Developer's Guide - Page 421
    Rules and Their Syntax" on this topic generate book Use the generate book subrule of a highest-level reader rule to specify whether FrameMaker should use elements or processing instructions to indicate where in a markup document to start a book and its components in the corresponding FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 422
    confirms this default behavior: reader generate book use processing instructions; • Your DTD may be have this rule: reader generate book for doctype "manual" put element " illustrate, assume the section element can occur either within or outside of a chapter element and you have this rule: reader
  • Adobe 65030365 | Developer's Guide - Page 423
    reader generate book put element "chapter" in file; And you have a markup document with the following element structure: When FrameMaker translates this document, it creates a book with manual instructions for instructions, use the do not output book processing instructions,
  • Adobe 65030365 | Developer's Guide - Page 424
    or toc. To accomplish all this, you can use this rule: reader generate book for doctype "manual", "book" { put element "chapter" in file "ch.doc"; and myfile.toc. See also Related rules "output book processing instructions" on page 447 General information Chapter 24, "Processing Multiple Files
  • Adobe 65030365 | Developer's Guide - Page 425
    you have these declarations for a markup element used for cross-references: Structure Application Developer's Guide 407
  • Adobe 65030365 | Developer's Guide - Page 426
    26 i n c l u d e d t d And you have this rule: element "xref" { is fm cross-reference element; attribute "format" { is fm property cross-reference format; implied value is "Page"; }} When FrameMaker encounters an instance of the xref element in a markup document and that instance doesn't have a
  • Adobe 65030365 | Developer's Guide - Page 427
    , FrameMaker does not include an SGML declaration in a generated SGML document. The sgml declaration rule tells FrameMaker to include one. The SGML Structure Application Developer's Guide 409
  • Adobe 65030365 | Developer's Guide - Page 428
    designated type, even if the markup document does not contain content for that table part. Synopsis and contexts element "gi" {. . . is fm table element ["fmtag1"]; reader insert table part element ["fmtag2"]; . . .} Read/Write Rules Reference 410
  • Adobe 65030365 | Developer's Guide - Page 429
    : TableCell Element (Table Heading): State Head General rule: State Head Row Text format rules 1. In all contexts. Default font properties Weight: Bold Structure Application Developer's Guide 411
  • Adobe 65030365 | Developer's Guide - Page 430
    text for the column headings. You could use these rules: element "statetab" { is fm table element "State Table"; fm property columns value is "3"; reader insert table heading element "State Head"; } element "state" { is fm table cell element; fm property column number value is "1"; fm property row
  • Adobe 65030365 | Developer's Guide - Page 431
    dropped, because they would lose the contents of the entire table. See also General information Chapter 18, "Translating Tables" on this topic Structure Application Developer's Guide 413
  • Adobe 65030365 | Developer's Guide - Page 432
    parts of this rule allow you to have the software make several changes to the attribute during translation. Read/write rules do not support doublebyte characters, so you cannot use this rule to process attributes with double-byte characters in their names. Synopsis and contexts 1. [structdv
  • Adobe 65030365 | Developer's Guide - Page 433
    the perc attribute to the Percentage attribute with this rule: cdata attribute "perc" is fm integer attribute "Percentage" range from 0 to 100; Structure Application Developer's Guide 415
  • Adobe 65030365 | Developer's Guide - Page 434
    to translate an internal entity to a single character in FrameMaker. Synopsis and contexts 1. entity "ename" is fm char ch [in "fmchartag"]; 2. reader entity "ename" is fm char ch [in "fmchartag"]; Arguments ename An entity name. ch A one-character string or a numeric character code (specified
  • Adobe 65030365 | Developer's Guide - Page 435
    occur in both directions. Or you can put the entity rule inside a reader rule to have the translation occur only when reading a markup document into them for your application. For information on how FrameMaker supports ISO public entities, see Appendix F, "ISO Public Entities Developer's Guide 417
  • Adobe 65030365 | Developer's Guide - Page 436
    these rules: entity "en" is fm char 0x13; reader entity "thin" is fm char 0x13; See also Rules information Chapter 17, "Translating Entities and Processing Instructions" on this topic is fm cross-reference of EMPTY. Read/ write rules do not support double-byte characters, so you cannot use
  • Adobe 65030365 | Developer's Guide - Page 437
    . fm property, page 399, specifies what to do with FrameMaker properties associated with the element. reader drop content, page 375, specifies that the content but not the structure of an element should be discarded on export of a FrameMaker document. Structure Application Developer's Guide 419
  • Adobe 65030365 | Developer's Guide - Page 438
    . You can choose either to have the same name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters in their names. Synopsis and contexts element "gi
  • Adobe 65030365 | Developer's Guide - Page 439
    name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters : element "fn" is fm footnote element "Footnote"; Structure Application Developer's Guide 421
  • Adobe 65030365 | Developer's Guide - Page 440
    . You can choose either to have the same name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters in their names. Synopsis and contexts element "gi
  • Adobe 65030365 | Developer's Guide - Page 441
    name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters , use this rule: element "m" is fm marker element; Structure Application Developer's Guide 423
  • Adobe 65030365 | Developer's Guide - Page 442
    table part, marker, cross-reference, graphic, or equation element, to set the property only for that element. Read/write rules do not support doublebyte characters, so you cannot use this rule to process attributes with double-byte characters in their names. Synopsis and contexts 1. attribute "attr
  • Adobe 65030365 | Developer's Guide - Page 443
    be the column width for tables, you should use these rules: element "graphic" { is fm graphic element; attribute "w" is fm property width; } Structure Application Developer's Guide 425
  • Adobe 65030365 | Developer's Guide - Page 444
    value and you want to rename the individual name tokens when translating to and from FrameMaker property values. Read/write rules do not support double-byte characters, so you cannot use this rule to process attributes with double-byte characters in their names. Synopsis and contexts 1. value
  • Adobe 65030365 | Developer's Guide - Page 445
    the declared value: position, align, and impby. These attributes correspond to the FrameMaker properties position, alignment, and import by reference or copy. Structure Application Developer's Guide 427
  • Adobe 65030365 | Developer's Guide - Page 446
    26 i s f m p r o p e r t y v a l u e By default, the defined values and corresponding property values for the position property are as follows: Defined value inline top below bottom sleft sright snear sfar sinside soutside tleft tright tnear tfar tinside toutside runin Property value inline top
  • Adobe 65030365 | Developer's Guide - Page 447
    : attribute "refcopy" { is fm property import by reference or copy; value "r" is fm property value reference; value "c" is fm property value copy; } Structure Application Developer's Guide 429
  • Adobe 65030365 | Developer's Guide - Page 448
    a reference element. Read/write rules do not support double-byte characters, so you cannot use this . Or you can put the entity rule inside a reader rule to have the translation occur only when reading an reference pages, see the FrameMaker user's manual. • When FrameMaker encounters references to
  • Adobe 65030365 | Developer's Guide - Page 449
    are for this situation. See also Rules mentioned in "entity" on page 381 synopses General information Chapter 17, "Translating Entities and Processing Instructions" on this topic Structure Application Developer's Guide 431
  • Adobe 65030365 | Developer's Guide - Page 450
    . You can choose either to have the same name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters in their names. Synopsis and contexts element "gi
  • Adobe 65030365 | Developer's Guide - Page 451
    26 is fm system variable element support double-byte characters, so you cannot use this rule to process elements in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte
  • Adobe 65030365 | Developer's Guide - Page 452
    26 is fm system variable element Synopsis and contexts element "gi" {. . . is fm system variable element ["fmtag"]; . . .} Arguments gi A generic identifier. fmtag A FrameMaker element tag. Details • If you use this rule, the other subrules of the element rule that you can use for the same
  • Adobe 65030365 | Developer's Guide - Page 453
    change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process what to do with FrameMaker properties associated with the element. reader insert table part element, page 410, indicates that the software Developer's Guide 435
  • Adobe 65030365 | Developer's Guide - Page 454
    . You can choose either to have the same name in both representations or to change the name during translation. Read/write rules do not support double-byte characters, so you cannot use this rule to process elements with double-byte characters in their names. Synopsis and contexts element "gi
  • Adobe 65030365 | Developer's Guide - Page 455
    only if part is row or cell. reader start new row, page 458, indicates applies only if part is cell. reader start vertical straddle, page 460, with SGML. Read/write rules do not support double-byte characters, so you cannot use [in body_or_ref flow "flowname"]; 2. reader entity "ename" is fm text
  • Adobe 65030365 | Developer's Guide - Page 456
    rule within an entity rule at the highest level to have the translation occur in both directions. Or you can put the entity rule inside a reader rule to have the translation occur only when reading an SGML document into FrameMaker. • If fname is not a FrameMaker document, you cannot specify the in
  • Adobe 65030365 | Developer's Guide - Page 457
    Rules mentioned in "entity" on page 381 synopses "reader" on page 453 General information Chapter 17, "Translating Entities and Processing Instructions" on this topic is fm value Use the is fm "attr" {. . . value "token" is fm value "val"; . . .} Structure Application Developer's Guide 439
  • Adobe 65030365 | Developer's Guide - Page 458
    26 i s f m v a l u e 3. element "gi" {. . . attribute "attr" {. . . value "token" is fm value "val"; Arguments token A token in a name token group. val An allowed value for a FrameMaker choice attribute. attr The name of a markup attribute. gi A generic identifier. Details • Use this
  • Adobe 65030365 | Developer's Guide - Page 459
    reader instructions for all non-element markers or for non-element markers of a particular type. By default, FrameMaker creates processing instructions for all non-element markers. You have the option of discarding non-element markers; you might use this rule Structure Application Developer's Guide
  • Adobe 65030365 | Developer's Guide - Page 460
    drop rule when you want to discard some but not all non-element markers. Synopsis and contexts fm marker ["type1", . . ., "typen"] is processing instruction; Arguments typei A FrameMaker marker type, such as Index or Type 22. Details • If you do not supply any typei arguments, this rule applies
  • Adobe 65030365 | Developer's Guide - Page 461
    reader line break is mode; 2. writer line break is mode; 3. element "gi" {. . . reader n is a positive integer in C syntax). For reader: one of forced return or space. gi A line. After this counter reaches n-10, it changes the next data character underlying parser. Within a reader rule, mode can be
  • Adobe 65030365 | Developer's Guide - Page 462
    element may need to be preserved on import, while a line break within a par element may be a word break: element "example" reader line break is forced return; element "par" reader line break is space; marker text is Use the marker text is rule to indicate whether the text of a marker element should
  • Adobe 65030365 | Developer's Guide - Page 463
    and equations to markup. FrameMaker uses this rule to determine the data content notation name to include in entity declarations it generates. Structure Application Developer's Guide 445
  • Adobe 65030365 | Developer's Guide - Page 464
    26 n o t a t i o n i s Synopsis and contexts element "gi" { is fm graphic_or_eqn element ["fmtag"]; writer type ["facetname"] notation is "notation"; . . .}} Arguments gi A generic identifier. graphic_or_eqn One of the keywords: graphic or equation. type One of the rules anchored frame, facet,
  • Adobe 65030365 | Developer's Guide - Page 465
    instructions book processing instructions By default, when instructions in the markup document to indicate where the individual files in the FrameMaker documents began. You use the output book processing instructions processing instructions; instructions when writing the book to markup.
  • Adobe 65030365 | Developer's Guide - Page 466
    set of FrameMaker elements and their attributes on the basis of the DTD and other rules. Synopsis and contexts reader {. . . preserve fm element definition "fmtag1"[, . . ., "fmtagN"]; . . .} Arguments fmtagi A FrameMaker element tag. Details • FrameMaker uses the preserve fm element definition
  • Adobe 65030365 | Developer's Guide - Page 467
    definition of Ex to correspond to the markup declaration. To suppress this change, use this rule: reader preserve fm element definition "Ex"; See also Related rules "drop" on page 373 "unwrap" on and contexts element {. . . preserve line breaks ; . . .} Structure Application Developer's Guide 449
  • Adobe 65030365 | Developer's Guide - Page 468
    26 p r e s e r v e l i n e b r e a k s Arguments None Details • For an element using this rule, the software writes a an RE (line break) immediately after the open tag and immediately before the close tag. • For an element using this rule, on export, FrameMaker writes a space character entity
  • Adobe 65030365 | Developer's Guide - Page 469
    an unrecognized processing instruction such as: it stores the processing instruction as the document to markup, it outputs the corresponding processing instruction if it finds a non-element DOC PI all unrecognized processing instructions, use this rule: processing instruction drop; See also
  • Adobe 65030365 | Developer's Guide - Page 470
    26 proportional width resolution is proportional width resolution is Use the proportional width resolution is rule to change the number used as the total for proportional column widths in tables. By default, if FrameMaker writes proportional columns widths, those widths add to 100. Synopsis and
  • Adobe 65030365 | Developer's Guide - Page 471
    Chapter 18, "Translating Tables" on this topic put element See "generate book" on page 403. reader The reader rule indicates a rule that applies only on import to FrameMaker. It can be used at the markup document. Allowed only at the highest level. Structure Application Developer's Guide 453
  • Adobe 65030365 | Developer's Guide - Page 472
    or within an element rule. preserve fm element definition, page 448, instructs the software not to modify a FrameMaker element definition when updating an highest level. Examples • To change the default ruling style for tables: reader table ruling style is "thick"; reformat as plain text Use the
  • Adobe 65030365 | Developer's Guide - Page 473
    437 General information Chapter 17, "Translating Entities and Processing Instructions" on this topic reformat using target document catalogs Use the inset "fname"; reformat using target document catalogs; . . .} 2. reader entity "ename" { is fm text inset "fname"; reformat using target Guide 455
  • Adobe 65030365 | Developer's Guide - Page 474
    fm text inset "fname"; retain source document formatting; . . .} 2. reader entity "ename" { is fm text inset "fname"; retain source document " on page 437 General information Chapter 17, "Translating Entities and Processing Instructions" on this topic specify size in Use the specify size in rule
  • Adobe 65030365 | Developer's Guide - Page 475
    circle with a diameter of 3.15 centimeters. Given the rule: element "graph" { is fm graphic element; writer anchored frame specify size in cm; } Structure Application Developer's Guide 457
  • Adobe 65030365 | Developer's Guide - Page 476
    cell element indicates that FrameMaker should start a new table row to contain that cell. Synopsis and contexts element "gi" {. . . is fm table cell element ["fmtag"]; reader start new row ["name"]; . . .} Arguments gi A generic identifier. Read/Write Rules Reference 458
  • Adobe 65030365 | Developer's Guide - Page 477
    this rule: element "gi" { is fm table cell element; fm property column number value is "1"; reader start new row; } Examples • For a complete example using the start new row rule, see " 376 "is fm table part element" on page 436 "reader" on page 453 Structure Application Developer's Guide 459
  • Adobe 65030365 | Developer's Guide - Page 478
    cell element indicates the start of a vertical straddle. Synopsis and contexts element "gi" {. . . is fm table cell element ["fmtag"]; reader start vertical straddle "name"; . . .} Arguments gi A generic identifier. fmtag A FrameMaker element tag. name A name associated with a table straddle
  • Adobe 65030365 | Developer's Guide - Page 479
    . Examples • To specify that all tables should use the Thick ruling style, use this rule: reader table ruling style is "Thick"; See also General information Chapter 18, "Translating Tables" on this topic "gi" unwrap; 2. fm element "fmtag" unwrap; Structure Application Developer's Guide 461
  • Adobe 65030365 | Developer's Guide - Page 480
    26 unwrap Arguments gi A generic identifier. fmtag A FrameMaker element tag. Details • When FrameMaker encounters an element to be unwrapped, it does not insert a corresponding element into the document it is creating. Instead, it inserts the content of an unwrapped element. • If you use this
  • Adobe 65030365 | Developer's Guide - Page 481
    General information Chapter 16, "Translating Elements and Their Attributes" on this topic use processing instructions See "generate book" on page 403. use proportional widths Use the use proportional widths Structure Application Developer's Guide 463
  • Adobe 65030365 | Developer's Guide - Page 482
    26 value • Assume you have the same table as in the last example and you use this rule: writer { use proportional widths; proportional width resolution is "8"; } FrameMaker writes this start-tag for the table: See also Related rules "proportional width resolution
  • Adobe 65030365 | Developer's Guide - Page 483
    page 376 General information Chapter 16, "Translating Elements and Their Attributes" on this topic value is See "fm property" on page 399. Structure Application Developer's Guide 465
  • Adobe 65030365 | Developer's Guide - Page 484
    26 write structured document write structured document By default, when you save a FrameMaker document to markup, the software writes out the document instance, any declarations for the internal DTD subset, and a DOCTYPE statement which references the external DTD subset, but (for SGML) not an
  • Adobe 65030365 | Developer's Guide - Page 485
    files that were imported by reference.drop content, page 375, exports a FrameMaker element without its contents. Allowed only within an element rule. Structure Application Developer's Guide 467
  • Adobe 65030365 | Developer's Guide - Page 486
    on export. Allowed at the highest level or within an element rule. [do not] output book processing instructions, page 447, specifies whether or not to create processing instructions that identify book components when writing a FrameMaker book as a markup document. Allowed only at the highest level
  • Adobe 65030365 | Developer's Guide - Page 487
    a FrameMaker book as a markup document, use this rule: writer do not output book processing instructions; • Assume you want all graphics to be exported in TIFF format. Further assume that some anchored frame export to file "$(entity).tif" as "TIFF"; } Structure Application Developer's Guide 469
  • Adobe 65030365 | Developer's Guide - Page 488
    26 writer Read/Write Rules Reference 470
  • Adobe 65030365 | Developer's Guide - Page 489
    it. For information on the commands for adding structure to documents, see the FrameMaker user's manual How a conversion table works A conversion table contains rules for mapping between document objects and for the new element to be used in later rules. Structure Application Developer's Guide 471
  • Adobe 65030365 | Developer's Guide - Page 490
    one of the conversion tables. When someone adds structure to a document manually, he or she typically begins with the lowest-level components and works are available. To make a conversion table easy to interpret for a human reader, you may want to write the rules in the order they should be applied
  • Adobe 65030365 | Developer's Guide - Page 491
    , the element tag for text ranges with the Code character format is cCode because the document also has a paragraph format called Code. Structure Application Developer's Guide 473
  • Adobe 65030365 | Developer's Guide - Page 492
    table from a set of documents that together provide all or most of the objects you need rules for. You can also add and modify rules manually. Setting up a conversion table from scratch You can set up a regular FrameMaker table to serve as a conversion table. The table must appear on a body page
  • Adobe 65030365 | Developer's Guide - Page 493
    element tag to match zero, one, or more characters. For example, P:%Body matches paragraphs with the format tag Body, FirstBody, or BulletBody. Structure Application Developer's Guide 475
  • Adobe 65030365 | Developer's Guide - Page 494
    A Adding or modifying rules in a conversion table Identifying a document object to wrap To identify a document object to wrap in an element, type an object type identifier and (optionally) a format tag in the first column of the table. Separate the identifier and format tag with a colon. FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 495
    you to name a table element from one or more child elements, rather than naming it from a table format tag (with the T: identifier). Structure Application Developer's Guide 477
  • Adobe 65030365 | Developer's Guide - Page 496
    A Adding or modifying rules in a conversion table For example: Wrap this object TB:RulesBody TE:E:RulesBody In this element RulesBody RulesTbl This rule wraps RulesBody table child elements in a RulesTbl table element. Most often, you wrap multiple elements together in one parent. You can use
  • Adobe 65030365 | Developer's Guide - Page 497
    quotation mark in an attribute value, escape the quotation mark with a backslash (\). Other restrictions on characters are determined by the attribute's type. Structure Application Developer's Guide 479
  • Adobe 65030365 | Developer's Guide - Page 498
    A Adding or modifying rules in a conversion table (The string type allows any arbitrary text string.) For information on these restrictions, see "Attribute type" on page 172. To give an element more than one attribute, separate the attribute definitions with an ampersand (&). For example, this
  • Adobe 65030365 | Developer's Guide - Page 499
    or graphic out of its paragraph and promote the element to be a sibling of the paragraphs, like this: Para Para Table Para Structure Application Developer's Guide 481
  • Adobe 65030365 | Developer's Guide - Page 500
    flag paragraph format overrides or flag character format overrides to the first column of the table. (The rule is caseinsensitive.) This is a general instruction for the table, so you do not add anything to the second and third columns. For example: Wrap this object flag paragraph format overrides
  • Adobe 65030365 | Developer's Guide - Page 501
    index marker in an Index element and a graphic anchor in a Graphic element, and then they wrap the two elements together in a Figure Structure Application Developer's Guide 483
  • Adobe 65030365 | Developer's Guide - Page 502
    A Testing and correcting a conversion table text range element. This way, the graphics in a structured document will automatically have a marker identifying a location to be included in an index. Building table structure from paragraph format tags When FrameMaker adds structure to tables, it
  • Adobe 65030365 | Developer's Guide - Page 503
    the rules for wrapping individual objects are correct, start writing and testing the rules to wrap elements and sequences in parent elements. Structure Application Developer's Guide 485
  • Adobe 65030365 | Developer's Guide - Page 504
    A Testing and correcting a conversion table Conversion Tables for Adding Structure to Documents 486
  • Adobe 65030365 | Developer's Guide - Page 505
    In the CALS model, the element has an attribute. This attribute is not supported in FrameMaker, because there is no way in a FrameMaker table to specify orientation on the page abbreviations for the "column width" formatting property are: Structure Application Developer's Guide 487
  • Adobe 65030365 | Developer's Guide - Page 506
    B Element and attribute definition list declarations Unit centimeter cicero didot inch millimeter pica point Abbreviation cm cc dd in (in FrameMaker dialog boxes, " is also used, but not for "column width" formatting property) mm pc (or pi) pt FrameMaker Property maximum height For FrameMaker
  • Adobe 65030365 | Developer's Guide - Page 507
    ) #IMPLIED char CDATA #IMPLIED charoff NUTOKEN #IMPLIED colsep %yesorno; #IMPLIED nameend NMTOKEN #REQUIRED namest NMTOKEN #REQUIRED rowsep %yesorno; #IMPLIED spanname NMTOKEN #REQUIRED > Structure Application Developer's Guide 489
  • Adobe 65030365 | Developer's Guide - Page 508
    B Element structure
  • Adobe 65030365 | Developer's Guide - Page 509
    element contains one or more rows. As supported by FrameMaker, a table row consists of a set of cells in entry elements, each of which can contain only text. Readers familiar with the CALS model may notice the nameend attribute indicates the last column. Structure Application Developer's Guide 491
  • Adobe 65030365 | Developer's Guide - Page 510
    B Attribute structure • Using the spanname attribute as an indirect reference to the columns. • Using the colname attribute (for a non-straddled cell). The CALS Table Model 492
  • Adobe 65030365 | Developer's Guide - Page 511
    property column ruling; attribute "rowsep" is fm property row ruling; attribute "orient" is fm attribute; attribute "pgwide" is fm property page wide; } Structure Application Developer's Guide 493
  • Adobe 65030365 | Developer's Guide - Page 512
    C element "tgroup" { /* If table is a container element, use this subrule: */ is fm table element; /* If table is a table element, use this subrule: */ unwrap; /*The rest of the subrules for tgroup are always applicable.*/ attribute "cols" is fm property columns; attribute "tgroupstyle" is fm
  • Adobe 65030365 | Developer's Guide - Page 513
    property rotate; attribute "valign" is fm attribute; attribute "align" is fm attribute; attribute "charoff" is fm attribute; attribute "char" is fm attribute; } Structure Application Developer's Guide 495
  • Adobe 65030365 | Developer's Guide - Page 514
    C Read/Write Rules for CALS Table Model 496
  • Adobe 65030365 | Developer's Guide - Page 515
    follows:
  • Adobe 65030365 | Developer's Guide - Page 516
    8879:1986//CAPACITY Reference//EN" SCOPE DOCUMENT SYNTAX SHUNCHAR 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Alphabet Nr. 1//ESC 2/13 4/1" DESCSET 0 256 0 FUNCTION RE 13 RS 10 SPACE 32 TAB SEPCHAR 9 NAMING LCNMSTRT "" UCNMSTRT "" LCNMCHAR "-."
  • Adobe 65030365 | Developer's Guide - Page 517
    , but not to more than 30 times their value in the reference concrete syntax: ATTCNT ATTSPLEN BSEQLEN ENTLVL LITLEN PILEN TAGLEN TAGLVL Structure Application Developer's Guide 499
  • Adobe 65030365 | Developer's Guide - Page 518
    specific implementation does not have to accommodate these features to be considered a conforming SGML system. The following optional SGML features are not supported by FrameMaker: • DATATAG • RANK • LINK • SUBDOC • CONCUR Your DTD and SGML documents cannot use any of these features. If they do, the
  • Adobe 65030365 | Developer's Guide - Page 519
    entity sets and provides rules to handle them for your application. For information on how FrameMaker supports ISO public entities, see Appendix F, "ISO Public Entities." This appendix describes the default character code \x10 has the entry: \x20 = \x10 Structure Application Developer's Guide 501
  • Adobe 65030365 | Developer's Guide - Page 520
    E This means that the FrameMaker character \x10 translates to the ISO Latin-1 character \x20. • If there is no row corresponding to a character code, then that character code is the same in both character sets. Character code \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0A \x0B \x0C \x0D \
  • Adobe 65030365 | Developer's Guide - Page 521
    \x99 = trap \xEA = \x90 \xEB = \x91 \xED = \x92 \xEC = \x93 \xEE = \x94 \xEF = \x95 \xF1 = \x96 \xF3 = \x97 \xF2 = \x98 \xF4 = \x99 Structure Application Developer's Guide 503
  • Adobe 65030365 | Developer's Guide - Page 522
    E Character code \x9A \x9B \x9C \x9D \x9E \x9F Mapping from ISO Latin-1 to FrameMaker \x9A = trap \x9B = trap \x9C = trap \x9D = trap \x9E = trap \x9F = trap Mapping from FrameMaker to ISO Latin-1 \xF6 = \x9A \xF5 = \x9B \xFA = \x9C \xF9 = \x9D \xFB = \x9E \xFC = \x9F \xA0 \xA1 \xA2 \xA3 \xA4 \
  • Adobe 65030365 | Developer's Guide - Page 523
    \xD9 = \xF4 \x2D = \xD0 \x2D = \xD1 \x22 = \xD2 \x22 = \xD3 \x60 = \xD4 \x27 = \xD5 trap = \xD6 trap = \xD7 \xFF = \xD8 trap = \xD9 Structure Application Developer's Guide 505
  • Adobe 65030365 | Developer's Guide - Page 524
    E Character code \xDA \xDB \xDC \xDD \xDE \xDF Mapping from ISO Latin-1 to FrameMaker \xDA = \xF2 \xDB = \xF3 \xDC = \x86 \xDD = trap \xDE = trap \xDF = \xA7 Mapping from FrameMaker to ISO Latin-1 \x2F = \xDA \xA4 = \xDB trap = \xDC trap = \xDD trap = \xDE trap = \xDF \xE0 \xE1 \xE2 \xE3 \xE4 \
  • Adobe 65030365 | Developer's Guide - Page 525
    \xFE = trap \xFF = \xD8 Mapping from FrameMaker to ISO Latin-1 trap = \xFA \xB0 = \xFB \xB8 = \xFC trap = \xFD trap = \xFE trap = \xFF Structure Application Developer's Guide 507
  • Adobe 65030365 | Developer's Guide - Page 526
    E Character Set Mapping 508
  • Adobe 65030365 | Developer's Guide - Page 527
    marks Well-known publishing characters Technical symbols Mathematical symbols If your application uses FrameMaker's support of ISO entity sets, you may want to create palettes your end user of special characters that translate as entities" on page 268. Structure Application Developer's Guide 509
  • Adobe 65030365 | Developer's Guide - Page 528
    F What you need to use ISO public entities What you need to use ISO public entities For your end users to use characters from the ISO public entity sets, your application needs two pieces of information for each character entity: the entity's declaration, and an SGML read/write rule that tells
  • Adobe 65030365 | Developer's Guide - Page 529
    are not complete rules documents. Instead, they are simply lists of rules or comments explaining which entities do not have default correspondences. Structure Application Developer's Guide 511
  • Adobe 65030365 | Developer's Guide - Page 530
    F What you need to use ISO public entities You can include individual files in your application's read/write rules document by using the #include statement. To include the rules for all of the ISO public entity sets, use this single statement: #include isoall.rw To include only the ISO Latin-1
  • Adobe 65030365 | Developer's Guide - Page 531
    : Variable FmCare-of FmEmsp13 FmFrac12 FmFrac13 FmFrac14 FmFrac15 FmFrac16 FmFrac18 FmFrac23 FmFrac25 FmFrac34 FmFrac35 FmFrac38 FmFrac45 FmFrac56 Defined as c/o an em space 1/2 1/3 1/4 1/5 1/6 1/8 2/3 2/5 3/4 3/5 3/8 4/5 5/6 Structure Application Developer's Guide 513
  • Adobe 65030365 | Developer's Guide - Page 532
    F What happens with the declarations and rules Variable FmFrac58 FmFrac78 Defined as 5/8 7/8 Your end user's documents may not have these character formats or variables defined. When FrameMaker imports an SGML document with an entity reference that needs one of these formats or variables, it
  • Adobe 65030365 | Developer's Guide - Page 533
    FrameMaker's translation of entities in the absence of rules and for information on how you can modify this, see Chapter 17, "Translating Entities and Processing Instructions." Structure Application Developer's Guide 515
  • Adobe 65030365 | Developer's Guide - Page 534
    F What happens with the declarations and rules ISO Public Entities 516
  • Adobe 65030365 | Developer's Guide - Page 535
    the utility programs defined for FrameMaker and described in the FrameMaker user's manual. You use fmimportsgml for batch importing of markup files and fmexportsgml for app app_name | -noapp] [-log log_file] [-language lang] [-v] [-h] markup_documents Structure Application Developer's Guide 517
  • Adobe 65030365 | Developer's Guide - Page 536
    G Importing SGML documents in batch mode where: -dir dir -suffix suffix -flow flow -structapps fname -app app_name -noapp -log log_file -v -h markup_documents names the directory where fmimportsgml stores output files. If this parameter is not specified, fmimportsgml uses the current directory.
  • Adobe 65030365 | Developer's Guide - Page 537
    parameter is not present and if there are errors during conversion, fmexportsgml creates the log file sgmllog.doc in the current directory. Structure Application Developer's Guide 519
  • Adobe 65030365 | Developer's Guide - Page 538
    G Exporting documents as SGML in batch mode -v -h fm_documents displays the software version. When -v is specified, all other parameters are ignored. displays a brief description of fmexportsgml and its parameters. When -h is specified, the software ignores all other parameters. Omitting all
  • Adobe 65030365 | Developer's Guide - Page 539
    that each use be defined. In markup terminology, such a definition is called an application. More precisely, the SGML standard (ISO 8879, Standard Structure Application Developer's Guide 521
  • Adobe 65030365 | Developer's Guide - Page 540
    your information in a variety of formats that can include print, PDF, HTML, or business transactions. Understanding Markup Applications The need for the rules that define a markup application. These ideas are easily illustrated with an example: While markup applications need not include a visual
  • Adobe 65030365 | Developer's Guide - Page 541
    of each medium. The appropriate rendering enhances the reader's comprehension of the text. Since markup prepares the scope of markup itself. Consider, for instance, a repair manual stored in markup. It may include procedures such as the following: . Structure Application Developer's Guide 523
  • Adobe 65030365 | Developer's Guide - Page 542
    of the document's structure, applications for markup text editors, such as Adobe FrameMaker, Softquad's XMetaL, and Arbortext's Epic, also require some processing. This pairing allows a single set of format rules to support both tasks. Thus, less effort is required to configure FrameMaker than
  • Adobe 65030365 | Developer's Guide - Page 543
    or SGML application in the FrameMaker publishing environment Adobe FrameMaker Application Development Developing a FrameMaker application shares taskmodule example illustrates, visual clues-font variation, indentation, and numbering-help readers understand and use Application Developer's Guide 525
  • Adobe 65030365 | Developer's Guide - Page 544
    more productive by creating an editing DTD. Several examples from the widely known DocBook DTD used for computer software and hardware documentation illustrate the types of changes that might be made: • Changing some generic identifiers, attribute names, or attribute values to reflect established
  • Adobe 65030365 | Developer's Guide - Page 545
    visual characteristics to be assigned to each structural element. Even when there is a rich body of sample documents and a tradition of consistent Structure Application Developer's Guide 527
  • Adobe 65030365 | Developer's Guide - Page 546
    conversion utility. Finally, once the application is used in production, continued testing should incorporate some actual production documents. Training and Support Despite the intuitive nature of structured documents, end users cannot be expected to understand the intended use of different element
  • Adobe 65030365 | Developer's Guide - Page 547
    SGML application in the FrameMaker publishing environment Provision must also be made for ongoing support. As they use the application, end users will occasionally have questions or encounter bugs the application that the application developer maintains. Structure Application Developer's Guide 529
  • Adobe 65030365 | Developer's Guide - Page 548
    and so forth. Since an EDD is a structured document, the FrameMaker Guided Editing feature assists developers in creating proper EDDs. In particular, developers need explaining them with extensive comments. These characteristics are illustrated by the following fragment: Developing XML or SGML Publishing
  • Adobe 65030365 | Developer's Guide - Page 549
    imported. If the format rules incorporate specific formatting parameters, the appearance can be changed by importing a new EDD with different format rules. Structure Application Developer's Guide 531
  • Adobe 65030365 | Developer's Guide - Page 550
    H Implementing an XML or SGML application in the FrameMaker publishing environment Moving Data Between markup and FrameMaker FrameMaker maintains the native element and attribute structure of markup in a WYSIWYG environment. The FrameMaker user can easily inspect this element structure in the
  • Adobe 65030365 | Developer's Guide - Page 551
    DTD, no format rules are included in the automatically generated EDD. The developer can manually edit this information into the EDD. Adding format rules to an EDD needs to such as graphics or tables, as special objects To support such requirements, FrameMaker offers three strategies for specifying
  • Adobe 65030365 | Developer's Guide - Page 552
    H Implementing an XML or SGML application in the FrameMaker publishing environment • By default, FrameMaker automatically translates an markup element into a FrameMaker element with the same name (and translates a FrameMaker element to a markup element with the same name); similar processing occurs
  • Adobe 65030365 | Developer's Guide - Page 553
    , structapps.fm, is a structure application file that FrameMaker reads whenever it starts. The following example is a fragment of a typical structure application file: Structure Application Developer's Guide 535
  • Adobe 65030365 | Developer's Guide - Page 554
    H Implementing an XML or SGML application in the FrameMaker publishing environment Application Definition Version 5.0 Application name: DTD: Read/write rules: SGML declaration: DOCTYPE: Maintenance task.dtd task.rw namelen.big taskmodule Application name: Template: Report report.tpl Entity
  • Adobe 65030365 | Developer's Guide - Page 555
    other objects-such as footnotes, cross-references, markers, and tables-to elements. Some manual polishing of the resulting documents is expected; the amount of editing depends on the discipline Para EmphPhrase Chapter Doc With this qualifier Main Chapter Structure Application Developer's Guide 537
  • Adobe 65030365 | Developer's Guide - Page 556
    install the completed application on the end users' system or network, or provide instructions for doing so. At a minimum, end users need copies of all templates The developer selects a short sample document and starts development by supporting the element types that occur in it. Later, the
  • Adobe 65030365 | Developer's Guide - Page 557
    read/write rules. If the developer changes additional element tags, the original names must be replaced by the new versions throughout the Structure Application Developer's Guide 539
  • Adobe 65030365 | Developer's Guide - Page 558
    end user from overriding automatic format rules) removing formatting commands. 10.For markup import, the developer adds the template to the Instead of starting with a DTD, the developer begins to develop an EDD. Guided Editing makes the mechanics of editing the EDD simple. It is the developer
  • Adobe 65030365 | Developer's Guide - Page 559
    for each type of FrameMaker object and format tag used in the sample document. The initial conversion table might appear as follows: Structure Application Developer's Guide 541
  • Adobe 65030365 | Developer's Guide - Page 560
    H Implementing an XML or SGML application in the FrameMaker publishing environment Wrap this object or objects P:MainTitle ChapterTitle P:Body C:Emphasis G: F:flow T:Table In this element MainTitle P:ChapterTitle Body Emphasis GRAPHIC FOOTNOTE Table With this qualifier 2. The developer edits
  • Adobe 65030365 | Developer's Guide - Page 561
    development involves creating these files along with data analysis, documentation, and maintenance activities. Adobe, the Adobe logo, and FrameMaker are trademarks of Adobe Systems Incorporated. ©1997 Adobe Systems Incorporated. All rights reserved. Printed in the USA. 000000 9/97. Structure
  • Adobe 65030365 | Developer's Guide - Page 562
    H Implementing an XML or SGML application in the FrameMaker publishing environment Developing XML or SGML Publishing Applications 544
  • Adobe 65030365 | Developer's Guide - Page 563
    simplifies printing, numbering, cross-referencing, and formatting. Continuous Acquisition and Life Cycle Support. The US Department of Defense standard for the electronic delivery of documents. A element. For example, if a Section element contains a Head Structure Application Developer's Guide 545
  • Adobe 65030365 | Developer's Guide - Page 564
    concrete syntax container element content model content rules conversion table cross-reference cross-reference source data data content notation declaration declared content declared value element followed by a Paragraph element, and the Paragraph element contains a Variable element, the Head and
  • Adobe 65030365 | Developer's Guide - Page 565
    as a memo or book. A class of documents having similar characteristics, such as technical manual or internal memo. In markup, a document type declaration (DTD) associates a document element with document. Holds and organizes the contents of the document. Structure Application Developer's Guide 547
  • Adobe 65030365 | Developer's Guide - Page 566
    Element Catalog element declaration element definition element definition document element tag EMPTY end-tag entity exclusion external crossreference external DTD subset external entity facet FDK client flow In FrameMaker, the information extracted from an EDD and stored within each structured
  • Adobe 65030365 | Developer's Guide - Page 567
    type declaration that occur within brackets (dso and dsc delimiters) in the markup document entity, rather than being in an external entity. Structure Application Developer's Guide 549
  • Adobe 65030365 | Developer's Guide - Page 568
    ISO public entity marker markup markup minimization model group NAMECASE parameter NDATA parameter entity parent element parser #PCDATA prefix processing instruction Glossary In markup, an entity whose replacement text is determined solely by information in its declaration. In SGML, an entity
  • Adobe 65030365 | Developer's Guide - Page 569
    page Rubi text rule SDATA SGML SGML application SGML declaration SGML read/write rule sibling source instruction to indicate a location in an markup document that should have a page break. In element, and parent element. See cross-reference source. Structure Application Developer's Guide 551
  • Adobe 65030365 | Developer's Guide - Page 570
    start-tag Structure API client subrule suffix system identifier template Text entity text flow text inset valid document valid element validating parser variable In markup, the markup that indicates the beginning of an element. In FrameMaker, an FDK client created to change the
  • Adobe 65030365 | Developer's Guide - Page 571
    XML An acronym for Extensible Markup Language. By definition, XML is a subset of SGML. Structure Application Developer's Guide 553
  • Adobe 65030365 | Developer's Guide - Page 572
    Glossary 554
  • Adobe 65030365 | Developer's Guide - Page 573
    51 default information 54 defining applications in 53 document elements 55 DTDs for import and export 56 editing 51 Structure Application Developer's Guide entity catalogs 58-59 external entities 60-61 filename extensions, specifying 56 files for rules documents 64 individual entities 59 length of
  • Adobe 65030365 | Developer's Guide - Page 574
    in 131 internal and external references 322 vs. text entities in markup languages 347 books, default translation to and from markup languages Structure Application Developer's Guide 556
  • Adobe 65030365 | Developer's Guide - Page 575
    PIs 353 books, read/write rules for 356 generate book 403 output book processing instructions 447 put element 403 use processing instructions 403 brackets ([ ]) in cross-reference formats 44 in format rules 136, at highest level 116 content rules 111-118 Structure Application Developer's Guide 557
  • Adobe 65030365 | Developer's Guide - Page 576
    from EDD ??-63, 217-226 generating on command 224 generating on Save As XML 225 managing generation 62 structure application definition 225 Structure Application Developer's Guide 558
  • Adobe 65030365 | Developer's Guide - Page 577
    Rubi groups 97-98 guidelines for writing 92 importing into a template 104 object format rules in 185-198 organizing in sections 90 Structure Application Developer's Guide 559
  • Adobe 65030365 | Developer's Guide - Page 578
    254 entities, default translation to and from SGML internal CDATA entities 252 internal SDATA entities 252 PI entities 256 SUBDOC entities 255 Structure Application Developer's Guide 560
  • Adobe 65030365 | Developer's Guide - Page 579
    definitions 118 when used with inclusions 117 export dpi (rule) 387 export to file (rule) 389 exporting to markup languages. See markup Structure Application Developer's Guide 561
  • Adobe 65030365 | Developer's Guide - Page 580
    for 191 promoting in conversion tables 481 graphics and equations, default translation to and from markup languages anchored frame properties 302-304 Structure Application Developer's Guide 562
  • Adobe 65030365 | Developer's Guide - Page 581
    tables 473 initial structure pattern, for Rubi groups 123 initial structure pattern, for tables 121-122 insert table part element (rule) 410 Structure Application Developer's Guide 563
  • Adobe 65030365 | Developer's Guide - Page 582
    value (rule) 439 is fm variable (rule) 441 is processing instruction (rule) 441 ISO Latin-1 character set 501-507 ISO public entities 509- -158 how applied 157 when to use 162 Structure Application Developer's Guide with autonumbers 157 level rules (for formatting) 138-140 ancestor tags
  • Adobe 65030365 | Developer's Guide - Page 583
    fm property value 426 is fm value 439 is processing instruction 441 marker text is 444 processing instruction 451 value 464 value is 399 markup language documents, operators with attributes, for formatting 137 output book processing instructions (rule) 447 P Pagination properties (text formatting)
  • Adobe 65030365 | Developer's Guide - Page 584
    161 formatting elements as 143 parentheses in conversion tables 478 in general rules 113 PIs. See processing instructions plus sign (+) in conversion tables 478 in general rules 112 prefix rules 158-162 attributes in 214 strings in 212 summary of 355-363 Structure Application Developer's Guide 566
  • Adobe 65030365 | Developer's Guide - Page 585
    syntax for 211 uses for 201 variables in 213 See also specific rules and categories of rules reader (rule) 453 read-only attributes creating with read/write rules 244 reformat as plain text (rule of developing 30-40 scenarios for 7 setting in an EDD 89 Structure Application Developer's Guide 567
  • Adobe 65030365 | Developer's Guide - Page 586
    attributes 282 identifying colspecs and spanspecs 283 omitting representation of parts 285-287 renaming table parts 279 representing properties as attributes 280 Structure Application Developer's Guide 568
  • Adobe 65030365 | Developer's Guide - Page 587
    in 142 context rules in 134-138 debugging 166 element paragraph format in 132 first and last format rules 156-158 Structure Application Developer's Guide formatting specifications in 146-155 how inherited from ancestors 127-131 level rules in 138-140 limits on values in 165 multiple format rules
  • Adobe 65030365 | Developer's Guide - Page 588
    values provided by system 179 untagged formatted text, wrapping 483 unwrap (rule) 461 use processing instructions (rule) 403 use proportional widths (rule) 463 user variables in container elements 197 in , read/write rules for 362 drop 373 entity 381 Structure Application Developer's Guide 570
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426
  • 427
  • 428
  • 429
  • 430
  • 431
  • 432
  • 433
  • 434
  • 435
  • 436
  • 437
  • 438
  • 439
  • 440
  • 441
  • 442
  • 443
  • 444
  • 445
  • 446
  • 447
  • 448
  • 449
  • 450
  • 451
  • 452
  • 453
  • 454
  • 455
  • 456
  • 457
  • 458
  • 459
  • 460
  • 461
  • 462
  • 463
  • 464
  • 465
  • 466
  • 467
  • 468
  • 469
  • 470
  • 471
  • 472
  • 473
  • 474
  • 475
  • 476
  • 477
  • 478
  • 479
  • 480
  • 481
  • 482
  • 483
  • 484
  • 485
  • 486
  • 487
  • 488
  • 489
  • 490
  • 491
  • 492
  • 493
  • 494
  • 495
  • 496
  • 497
  • 498
  • 499
  • 500
  • 501
  • 502
  • 503
  • 504
  • 505
  • 506
  • 507
  • 508
  • 509
  • 510
  • 511
  • 512
  • 513
  • 514
  • 515
  • 516
  • 517
  • 518
  • 519
  • 520
  • 521
  • 522
  • 523
  • 524
  • 525
  • 526
  • 527
  • 528
  • 529
  • 530
  • 531
  • 532
  • 533
  • 534
  • 535
  • 536
  • 537
  • 538
  • 539
  • 540
  • 541
  • 542
  • 543
  • 544
  • 545
  • 546
  • 547
  • 548
  • 549
  • 550
  • 551
  • 552
  • 553
  • 554
  • 555
  • 556
  • 557
  • 558
  • 559
  • 560
  • 561
  • 562
  • 563
  • 564
  • 565
  • 566
  • 567
  • 568
  • 569
  • 570
  • 571
  • 572
  • 573
  • 574
  • 575
  • 576
  • 577
  • 578
  • 579
  • 580
  • 581
  • 582
  • 583
  • 584
  • 585
  • 586
  • 587
  • 588