Adobe UserGuide Frame Maker 7.0 XML Cookbook Framemaker 7 En
User Manual: adobe FrameMaker - 7.0 - XML Cookbook Free User Guide for Adobe FrameMaker Software, Manual
Open the PDF directly: View PDF .
Page Count: 110
Download | |
Open PDF In Browser | View PDF |
The Adobe® FrameMaker® 7.0 XML Cookbook The Adobe® FrameMaker® 7.0 XML Cookbook 1 Welcome Welcome Welcome to Adobe FrameMaker 7.0, the premier desktop authoring, page-layout, and XML, HTML, and SGML publishing software. FrameMaker 7.0 advances the ease of publishing to paper, PDF, and common markup languages for Web display and data exchange (HTML, XML, SGML). FrameMaker combines easy-to-use word-processing, page-layout, large file, and book handling features and provides a powerful authoring and publishing platform for small and large projects. Structured FrameMaker adds Structured Authoring—today’s popular method of structuring and organizing information—so that content and organization can be tightly controlled and, therefore, easily integrated with content management and publishing systems. Many new and enhanced features in FrameMaker 7.0 increase the value of FrameMaker as your content authoring and publishing application. The XML Cookbook highlights many of these important capabilities in Structured FrameMaker including: • • • • • • Structured Authoring XML Importing and Exporting Read/Write Mapping Rules CSS and XSL SVG Tagged PDF. FrameMaker 7.0 also includes two important XML-related enhancements: • • 2 XHTML support Updated DocBook 4 for XML. The Adobe® FrameMaker® 7.0 XML Cookbook Overview Overview About this Document The XML Cookbook is intended to give you a jump-start at implementing a Structured Authoring system for your documentation. You will be guided through the development, authoring, and publishing stages—from creating a structured authoring template to importing and exporting XML. This document contains examples, illustrations, and minitutorials to help build your skills with Structured FrameMaker 7.0 and intended for use with the English version of FrameMaker. The XML Cookbook is divided into ten sections to help you learn, study, and review each aspect of setting up Structured FrameMaker for XML authoring, importing, and exporting: • Cookbook Setup: Setting up your computer for the XML Cookbook exercises. • Application Setup: Setting up Structured FrameMaker for Importing and Exporting XML. • Creating Read/Write Rules: Creating the rules that Structured FrameMaker uses to import and export XML, including rules for mapping names, applying formatting, and managing multiple files and books. • Enabling Namespaces: Defining how Structured FrameMaker handles XML Namespaces when import or exporting XML. • Document Schemas: Generating a Structured FrameMaker Element Definition Document (EDD) from an XML DTD and adding formatting controls. • Reading XML Documents: Opening and rendering an XML document as a Structured FrameMaker document. • Reading XML Fragments: Importing an XML fragment into a Structured FrameMaker document. • Structured Authoring: Using “Guided Editing” to easily edit and validate a Structured FrameMaker document. • Writing an XML Instance: Exporting an XML instance from a Structured FrameMaker document. • XSL Stylesheets and CSS Stylesheets (CSS): Defining the behavior of Structured FrameMaker for creating a CSS or for referencing a CSS or XSL when exporting XML documents. The Adobe® FrameMaker® 7.0 XML Cookbook 3 Overview About Structured and Unstructured FrameMaker 7.0 FrameMaker 7.0 comes with two user interface environments: Structured and Unstructured. You choose which environment you want work in when you launch FrameMaker 7.0, and you can change the environment at any time. Your decision to use the structured environment versus the unstructured environment will generally depend on the type of documents you produce and your publishing and distribution plans. Both environments provide an ideal authoring and publishing solution for individuals, small groups, and the enterprise. With its integrated authoring and publishing capabilities, a flexible and easy-to-use interface, and a wide range of input and output options, FrameMaker 7.0 can handle the whole job—from content creation, to composition and pagination, to distribution in multiple formats. Structured FrameMaker 7.0 extends the basic FrameMaker interface to enable you to easily structure your content so that it is similar to the structure that is applied to XML or SGML, enabling smooth incorporation of XML into your publishing process. The key benefits of Structured FrameMaker 7.0 include: • A user-friendly interface that hides the technicalities of markup such as HTML, XML, and SGML. • Automation of many of the difficult aspects of markup, such as ID, entity, and Namespace management. • Integrated authoring and publishing components enabling you to handle the entire writing and publishing job with a single tool. • Powerful hypertext authoring and cross-referencing tools for creating online documents efficiently. • Support for Japanese and Roman text to facilitate creating content for audiences worldwide. • • Robust composition and pagination, including color support. • A complete set of tools for creating and maintaining XML and SGML publishing applications. Built-in conversion to PDF, XML, SGML, and HTML, including the preservation of hyperlinks. Unstructured FrameMaker 7.0 is the perfect tool for basic word processing and authoring that have paper and PDF publishing requirements. Structured and Unstructured Documents You can author and publish XML from both Structured and Unstructured FrameMaker 7.0 documents. The steps to generate XML will be different depending on the document type. Structured FrameMaker Documents It is easy to create XML from your Structured FrameMaker 7.0 documents. Several support files control the authoring, importing, and exporting behaviors of your project. To start Structured Authoring, all you need is a Structured Template. Before you save your first XML document to XML markup, you will set up your XML Application File, reference your XML DTD, and create your XML Read/Write rules. 4 The Adobe® FrameMaker® 7.0 XML Cookbook Overview Unstructured FrameMaker Documents To create XML from your Unstructured FrameMaker 7.0 documents, you will use Quadralay WebWorks. For information on using Quadralay WebWorks see the Adobe FrameMaker 7.0 User Guide and also the WebWorks Publisher Standard Edition Getting Started guide. About Structured Authoring Structured authoring assembles, or wraps, text into elements, that are in turn contained, or wrapped, within other elements. This assembly of elements, or structure, allows for a document construction that describes content in terms of a hierarchy. Beyond the visual formatting of paragraphs, structured elements provide additional information; their placement within the structure can imply importance and meaning. Elements may contain attributes, also known as meta-data (information about information). In 1986, Standard Generalized Markup Language (SGML) became in international standard (ISO 8879). Its goal: to provide a standardized method of describing and creating structured documents independent of any hardware, software, formats, or operating system. Since SGML documents conform to an international standard, they are portable and can be easily exchanged with other users. More recently, Extensible Markup Language (XML) has been adopted by the World Wide Web Consortium (W3C), an international organization made up of software industry leaders including Adobe, Intel, and Microsoft, as well as numerous other representatives from the software/hardware industry and academia. Now, with FrameMaker 7.0, authors can create structured documents using either markup language—SGML or XML. Why FrameMaker 7.0 for Structured Authoring The XML syntax is comprehensive and can take a long time to master. Most text editors for XML are not user-friendly and vary greatly from one operating system to another. FrameMaker 7.0 hides the markup syntax from the author and provides a powerful graphical user interface that is easy to learn and use. The Structured View enables you to look at the hierarchy of your structure. The Element catalog guides you easily through the most complex structures, helping you to make decisions about valid elements at any location in the document. The Validation tool quickly locates invalid elements and assists you in correcting the errors. Although FrameMaker 7.0 documents are not XML documents, they can be easily exported to XML as well as SGML, XHTML, and HTML. FrameMaker can easily import XML and SGML as well as add structure to unstructured documents through the use of a conversion table. Structure Features: Structured FrameMaker 7.0 is a complete structured publishing system providing: The Adobe® FrameMaker® 7.0 XML Cookbook 5 Overview • • • • • • 6 Elements to organize content Attributes to add element information Validation to delete invalid structure Conversion tables to add structure Structure Window to view elements Catalog to organize element use. The Adobe® FrameMaker® 7.0 XML Cookbook XML Cookbook Setup XML Cookbook Setup Your Practice Folder The XML Cookbook requires that you create a practice folder for your project files. You will copy XML Cookbook files from the XML Cookbook CD or Web site to your project folder. 1. Create your practice folder. • 2. 3. On your computer, create a new folder and name it “Practice”. Copy the folders and files from the XML Cookbook disk or Web site into the “Practice” folder. • Copy the “App” and “ART” folders to the “Practice” folder. • Copy the “ColorDoc.xml”, “ColorSection1.xml”, and “ColorSection2.xml” files to the “Practice” folder. Create a folder to hold the XML files that you will create. • In the “Practice” folder, create a folder and name it “XML”. The Adobe® FrameMaker® 7.0 XML Cookbook 7 Application Setup Application Setup Components of a Structured FrameMaker XML Application The XML Cookbook comes complete with all the files you need to author and create XML documents: • Structured Template—A blank FrameMaker document that contains element and attribute definitions, which are rules that define when and where those elements and attributes can be used in a Structured FrameMaker document. • XML DTD—The XML rules document that defines the elements and attributes that can be used when creating an XML document. • Read/Write Rules—A document containing mapping rules that control how XML is imported into Structured FrameMaker documents and exported from Structured FrameMaker documents. • • CSS—A stylesheet used to format structured content in a Web browser. • SVG and TIFF Graphics—Two types of graphics that can be imported into FrameMaker documents. • XML document instances—XML documents that contain well-formed XML structure. “Well-formed XML” means that the XML document has one root element and that all other elements are properly nested. XSL—A stylesheet used to format structured content in a Web browser; similar to a CSS but with more control over the formatting and positioning of elements. Setting up the XML Application In order for FrameMaker to import and export XML, you need to identify to FrameMaker the locations of all the necessary files and define the preferences. This is called “creating an application” and is accomplished using a specific type of FrameMaker file (a structured application definition document) with the filename of structapps.fm. Getting Started Tip Typically, the Structured Template designer creates and edits the XML applications to be used by the Structured FrameMaker authors. To create a Structured XML application you can either edit the default structapps.fm that is installed with Structured FrameMaker or make a copy for you own use. You will include references to the following files in your XML Cookbook structapps.fm file: • • • XML DTD—XML rules document ChapterTemplate.fm—Structured FrameMaker template ChapterReadWriteRules.fm—Read/Write mapping rules document. You will also set the following preferences in your XML Cookbook structapps.fm application: 8 The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup Tip The structapps.fm file is used to manage applications for both XML and SGML import and export. • • Namespaces—Enabled to preserve Namespaces on XML import and export Stylesheet—CSS and XSL references to tell your exported XML how to reference a stylesheet. The following graphic shows a sample Application created to import and export DocBook XML. Notice that the Application above is comprised of file references and application settings. Preparing an application is similar to setting parser and application settings in a Web or XML environment. The first step in setting up your XML Application in the structapps.fm file is to identify all the files that are needed for XML import and/or export. Structured FrameMaker provides a default structapps.fm document that you will open and save into your practice folder for use with your XML Cookbook lessons. The Adobe® FrameMaker® 7.0 XML Cookbook 9 Application Setup 1. 10 Start FrameMaker, and check to see if you are currently running Structured FrameMaker. • Start FrameMaker 7.0. • Choose the File>Preferences>General command (Windows and Macintosh) or the keyboard shortcut !fP (Unix). • Check the value in the Product Interface drop-down menu. • If the Product Interface is not “Structured FrameMaker”, change the option to “Structured FrameMaker”, click the Set button, and restart FrameMaker. The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup 2. Tip The default structapps.fm file is located in the “Structured” folder in the FrameMaker folder. You can open it using the File>StructureTools> Edit Application Definitions command or by using the File>Open command to locate and open it. If you do not see the File>StructureTools menu, you are currently running unstructured FrameMaker and not Structured FrameMaker. To change to Structured FrameMaker, choose the File>Preferences> General command, change the Product Interface to Structured FrameMaker, click the Set button, and restart FrameMaker. Open the structapps.fm file. • Choose the File>Structure Tools>Edit Application Definitions command (Windows and Macintosh) or use the keyboard shortcut !fTA (Unix). Or use the following procedure: • Choose the File>Open command (Windows and Macintosh) or use the keyboard shortcut !fo (Unix). The Adobe® FrameMaker® 7.0 XML Cookbook 11 Application Setup • Tip You will work in your own copy of structapps.fm for the XML Cookbook. You do this by opening FrameMaker’s default structapps.fm file and then saving it to a new location on your computer. 3. Tip The default application file installed with Structured FrameMaker contains applications for several XML and SGML publishing projects including DocBook, XDocBook, and XHTML. 4. 12 Locate and open the structapps.fm document in the Structured folder in the FrameMaker folder. For Macintosh users, ensure that the “Show All Files” button is selected. For Unix users, open the file: $FMHOME/fminit/ usenglish/structure/structapps.fm. Save the structapps.fm file into your “App” folder. • Choose the File>Save As command. • Navigate to the “App” folder in your“Practice” folder. • Click the Save button. Take a moment to review the contents of structapps.fm. You will edit structapps.fm to define an application for your XML Cookbook. Notice that structapps.fm is a structured document. For ease of navigation and editing, you will add your XML Application to structapps.fm with element boundaries turned on and the Element Catalog and Structure View open. Element Boundaries identify the beginning and ending of elements in your document. You can view the elements with square brackets or as Tags by choosing the appropriate command from the View menu. The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup • Choose the View>Element Boundaries command to turn Element Boundaries on. The Element Boundaries guide you through the document’s structure The Adobe® FrameMaker® 7.0 XML Cookbook 13 Application Setup • Choose the Element>Element Catalog command or click on the Element Catalog icon to open the Element Catalog. The Element Catalog guides you through the process of inserting elements The Element Catalog helps you insert valid elements. • Click the Structure View icon, located in the top right-hand corner of the document window, to open the Structure View. Tip Structapps.fm on Unix does not include the XDocBook and DocBook applications. The Structure View is a hierarchical view of the document’s structure. 14 The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup • In the Structure View, click above the first “SGMLApplication” element to place your insertion point. Insertion point The Element Catalog displays valid elements. Notice that XMLApplication is one of your valid choices. The Element Catalog display can be set to display more than valid elements. To set the Element Catalog display, click the Options button in the Element Catalog. Tip Although XML and SGML applications in Structured FrameMaker are very similar, one difference to note is that an SGML application can include an SGML Declaration document and an XML application does not. 5. Begin defining your XML Application by inserting the “XMLApplication” element. • In the Element Catalog, select the “XMLApplication” element. The Adobe® FrameMaker® 7.0 XML Cookbook 15 Application Setup • Click the Insert button to insert the “XMLApplication” element. The XMLApplication element and its first child, ApplicationName, are inserted. 16 The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup 6. Tip When you import XML, you will need to select an application to process the XML from a list of the application names residing in structapps.fm. To avoid confusion, use application names in structapps.fm that are clear and meaningful. Tip An XML DTD can be thought of as rules file that defines what elements can be used in a document or subdocument (document fragment) including how many times it can occur and what type of content it can contain. The equivalent file in Structured FrameMaker is the Element Definition Document (EDD). You can use the File>Structure Tools>Open DTD to turn a DTD into an EDD, or use the File>Structure Tools>Save as DTD to turn an EDD into a DTD. Enter the name of your XML application. • Type TechPubs The Name of the Application appears in the Document Window and the Structure View. Structured FrameMaker needs several files in order to import and export XML. These files are referenced in a special structure called an “Application” in structapps.fm. For your XML Cookbook project you will reference the XML DTD, the Structured FrameMaker template, and the Read/Write Rules document. You will also set the XML DOCTYPE so that Structured FrameMaker can automatically recognize the XML document type on import. Many of these settings will also be important for XML export. • In the Structure View, click after the “ApplicationName” element. Insertion point The Adobe® FrameMaker® 7.0 XML Cookbook 17 Application Setup Tip When including folder paths in your applications, take care to use the correct syntax for the platform on which your application will be used. For Windows, use the backslash “\” character to delineate folders, for Unix, use the forward-slash "/" character to delineate folders, and for Macintosh, use the colon “:” character. Also remember that file folder and file names are case sensitive on the Unix platform. • From the Element Catalog, insert the “DTD” element. • Type App\Chapter.dtd (Windows), App/Chapter.dtd (Unix), or :App:Chapter.dtd (Macintosh). You have just created a reference to one of the application-related files you copied into the “App” folder in your “Practice” folder at the beginning of this lesson. Because the “App” folder is nested within the “Practice” folder, you need to include the folder name with the file name. • In the Structure View, place the insertion point after the “DTD” element. Insertion point 18 The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup • From the Element Catalog, insert the “ReadWriteRules” element. • Type App\ChapterReadWriteRules.fm (Windows), App/ChapterReadWriteRules.fm (Unix), or :App:ChapterReadWriteRules.fm (Macintosh). • In the Structure View, place the insertion point after the “ReadWriteRules” element. Insertion point The Adobe® FrameMaker® 7.0 XML Cookbook 19 Application Setup 7. • From the Element Catalog, insert the “Template” element. • Type App\ChapterTemplate.fm (Windows), App/ChapterTemplate.fm (Unix), or:App:ChapterTemplate.fm (Macintosh). Identify the XML DOCTYPES that you want your XML Application to recognize when importing or exporting XML. For your XML Cookbook project you will include Chapter and Section DOCTYPES. • In the Structure View, click after the “Template” element. Insertion point 20 The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup • From the Element Catalog, insert the “DOCTYPE” element. • Type Chapter • In the Structure View, click after the “DOCTYPE” element. Insertion point The Adobe® FrameMaker® 7.0 XML Cookbook 21 Application Setup 22 • From the Element Catalog, insert the “DOCTYPE” element. • Type Section The Adobe® FrameMaker® 7.0 XML Cookbook Application Setup 8. Tip You can leave the structapps.fm file open as you develop your XML application and during your XML import and export testing. Save your structapps.fm file. • Choose the File>Save command. Leave structapps.fm open while you are developing your XML project. The Adobe® FrameMaker® 7.0 XML Cookbook 23 Application Setup Tip Structured FrameMaker automatically reads the structapps.fm file located in the Structure folder at startup. When you change the location or make changes to the structapps.fm file that you want Structured FrameMaker to use, you need to have FrameMaker “read” the file before your changes take effect. 24 9. Read structapps.fm back into Structured FrameMaker’s memory so that your changes become active. • Choose the File>Structure Tools>Read Application Definitions command. The Adobe® FrameMaker® 7.0 XML Cookbook Creating XML Read/Write Rules Creating XML Read/Write Rules Tip A DTD does not contain any information on how elements are to be formatted. The DTD rules only define how and where the elements can be used and what they can or must contain. In Structured FrameMaker, the formatting of elements is managed by formatting rules in the structured template. When XML is imported into a Structured FrameMaker document, your XML Application read/write rules define how elements such as tables, cross-references, or graphics are converted. Read/write rules can be used to: Tip You can open an ASCII file using an ASCII text editor or Structured FrameMaker. If you use Structured FrameMaker, you must use a modifier key (as described in step 1) when opening the file or Structured FrameMaker will attempt to convert the file into a Structured FrameMaker binary file. 1. • • • Assign a new name to an element or attribute. • Map entities to Structured FrameMaker variables. Delete an element or attribute. Map XML attributes to Structured FrameMaker object properties (for tables and graphics). Before creating read/write rules, examine your DTD and EDD to determine which elements need rules. Graphic elements will need rules, as will cross-references, markers, tables, and footnotes. Open Chapter.dtd • Using an ASCII text editor (not Structured FrameMaker), open Chapter.dtd. Or, use the following procedure to use Structured FrameMaker as the editing application: • From Structured FrameMaker, choose the File>Open command. • Locate and highlight Chapter.dtd but do not double-click the mouse or single-click the mouse and click the Open button. For Macintosh users, ensure that the “Show All Files” button is selected. • Hold down the Shift key (Unix and Windows) or hold down the Option key (Macintosh) and click the Open button. The use of the modifier key (Shift or Option) tells Structured FrameMaker not to convert the XML file but open it as text instead. • Click the Convert button. • Click the Read button. The Adobe® FrameMaker® 7.0 XML Cookbook 25 Creating XML Read/Write Rules 2. Take a moment to look at Chapter.dtd. • Locate and review the element and attribute definitions for the “graphic” element. • Locate and review the element and attribute definitions for the “table” element. • Locate and review the element and attribute definitions for the “topicxref” element. These elements and attributes will require read/write rules to control their behavior during XML import and export. • 26 Close the DTD without saving. The Adobe® FrameMaker® 7.0 XML Cookbook Creating XML Read/Write Rules 3. Create your XML Read/Write Rules file. • Choose the File>Structure Tools>New Read/Write Rules command. Notice that the new file contains some comments and the statement #include "isoall.rw". This statement tells Structured FrameMaker to use read/write rule mappings for the ISO special entity for special characters used when authoring FrameMaker content. The Adobe® FrameMaker® 7.0 XML Cookbook 27 Creating XML Read/Write Rules • Tip In Structured FrameMaker you can create your read/write rules as a FrameMaker document (not structured), as a Structured FrameMaker document (structured), or as an ASCII file. You select the file type according to the requirements of your project. Save the new Read/Write Rules file as “ChapterReadWriteRules.fm” into your “App” folder in your “Practice” folder. Most rules in the Read/Write Rules document are expressed from the XML perspective. For example, a rule like element "pname" is fm element "ProductName"; equates the XML generic identifier “pname” with the Structured FrameMaker element tag “ProductName”. The rule is written from the XML viewpoint, and it applies equally to both import and export. A few rules pertain to Structured FrameMaker constructs that have no XML counterparts, and these rules are expressed from the Structured FrameMaker perspective. For example, a rule might specify dropping the Structured FrameMaker element “IndexMarker” on export as: fm element "IndexMarker" drop; Tip Although read/write rules appear to be written for XML import, unless you make specific use of the “Read” or “Write” syntax, the rules apply equally to both import and export. 4. Enter read/write rules to map names between XML and Structured FrameMaker. • Place the insertion point at the end of the Read/Write Rules document. Insertion point 28 The Adobe® FrameMaker® 7.0 XML Cookbook Creating XML Read/Write Rules • Tip Elements names in XML should be humanreadable. If a user were to look at the XML markup, they should be able to understand the name and meaning of each element. Type the following read/write rule to map the “Section” element: element "section" is fm element "Section"; Read/Write rule • Tip For more information on creating read/write rules to map element names, see Chapter 15, “Translating Elements and Their Attributes,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Type the following read/write rule to map the “Para” element: Read/Write rule • Type the following read/write rule to map the “TopicsList” element: element "tplist" is fm element "TopicsList"; This one rule maps the XML element “tplist” to “TopicsList” on import and “TopicsList” to “tplist” on export. The quotation marks around the element names are required. This type of read/write rule is always terminated with a semicolon. • On the next line, type the following rule to map the “TopicHead” element: element "tphead" is fm element "TopicHead"; • On the next line, type the following rule to map the “TopicPara” element: element "tppara" is fm element "TopicPara"; • On the next line, type the following rule to map the “FirstUse” element: element "firstuse" is fm element "FirstUse"; Tip For more information on creating read/write rules to map table elements, see Chapter 17, “Translating Tables,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 5. Continue to type read/write rules to map names and element types between XML and Structured FrameMaker as follows: • On the next line, type the following rule: element "tbody" is fm table body element "TableBody"; • On the next line, type the following rule: element "thead" is fm table heading element "TableHead"; • On the next line, type the following rule: • On the next line, type the following rule: element "tfoot" is fm table footing element "TableFoot"; element "trow" is fm table row element "TableRow"; • On the next line, type the following rule: element "tentry" is fm table cell element "TableCell"; 6. Enter a read/write rule to map an element, its attributes, and its attribute values between XML and Structured FrameMaker. The attribute value rules are nested in The Adobe® FrameMaker® 7.0 XML Cookbook 29 Creating XML Read/Write Rules Tip For more information on creating read/write subrules, see Chapter 13, “Rule syntax,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. subrules. No semicolon is used with the main rule when a subrule follows. Subrules are begun with an open curly brace “{” and ended with a close curly brace “}”. • On the next lines, type the following rules for the “Head” element and its “Id” attribute: element "head" { is fm element "Head"; attribute "id" is fm attribute "Id"; } 7. Enter a read/write rule to map an element, its attributes, and attribute values between XML and Structured FrameMaker. This read/write requires subrules. • On the next lines, type the following rules for the “Chapter” element, the “AuthorName” attribute, and the “Version” attribute values: element "chapter" { is fm element "Chapter"; attribute "names" is fm attribute "AuthorName"; attribute "version" { is fm attribute "Version"; value "1" is fm value "1st Draft"; value "2" is fm value "2nd Draft"; value "3" is fm value "3rd Draft"; value "4" is fm value "Final"; } } read/write rules that contain more than one action require that the rule be broken into subrules as indicated in the “Chapter” rules. 8. Tip For more information on creating read/write rules to map cross-reference elements, see Chapter 19, “Translating CrossReferences,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Enter a read/write rule to map a cross-reference element between XML and Structured FrameMaker. FrameMaker properties, which are used to map FrameMaker property values to attributes, are not quoted like element and attribute names. • On the next lines, type the following rules for the “TopicXRef” element and its attributes: element "tpxref" { is fm cross-reference element "TopicXRef"; attribute "format" is fm property cross-reference format; attribute "refid" is fm attribute "IdReference"; } 9. Enter a read/write rule to map the “Figure” element between XML and Structured FrameMaker. • On the next lines, type the following rules for the “Figure” element: element "figure" is fm element "Figure"; 30 The Adobe® FrameMaker® 7.0 XML Cookbook Creating XML Read/Write Rules 10. Continue to create read/write rules following the remaining steps in this section, or close your current ChapterReadWriteRules.fm, and replace it with the completed version located in the “Completed” folder. 11. Enter a read/write rule to map a graphic element between XML and Structured Tip For more information on creating read/write rules to map graphic elements, see Chapter 18, “Translating Graphics and Equations,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. FrameMaker. This rule will include mappings for TIFF and SVG graphic export (facet writer rules). • On the next lines, type the following rules for the “Graphic” element and its attributes: element "graphic" { is fm graphic element "Graphic"; attribute "type" { is fm attribute "Type"; value "byreference" is fm value "ByReference"; value "bycopy" is fm value "ByCopy"; } attribute "format" is fm attribute "Format"; attribute "entityref" is fm property entity; attribute "fileref" drop; attribute "filename" drop; attribute "entity" drop; writer facet "TIFF" { specify size in pt; export to file "$(entity).jpg" as "JPEG"; convert referenced graphics; } writer facet "SVG" { specify size in pt; export to file "$(docname).svg" as "SVG"; } } 12. Enter a read/write rule to map a table element and its attributes between XML and Tip For more information on creating read/write rules to map table elements and attributes, see Chapter 17, “Translating Tables,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Structured FrameMaker. • On the next lines, type the following rule for the “Table” element and its attributes. The rule specifies that the name of the FrameMaker table style will be preserved as the attribute “Tablestyle” in the XML document: element "table" { is fm table element "Table"; attribute "colsep" is fm property column ruling;; attribute "rowsep" is fm property row ruling; attribute "tablestyle" is fm property table format; } The Adobe® FrameMaker® 7.0 XML Cookbook 31 Creating XML Read/Write Rules 13. Enter a read/write rule to map an index marker between XML and Structured Tip For more information on creating read/write rules to map markers, see Chapter 21, “Translating Markers,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. FrameMaker. • On the next lines, type the following rule for the “Index” element. The rule specifies that the index marker text will be treated as an attribute in the XML document: element "indexentry" { is fm marker element "IndexEntry"; marker text is attribute; } 14. Enter a read/write rule to map the “Caption” element. • On the next lines, type the following rule for the “Caption” element: element "caption" is fm element "Caption"; 15. Enter a read/write rule to map a cross-reference marker between XML and Structured FrameMaker. • On the next lines, type the following rule for the “CrossReference” element: element "crossreference" { is fm cross-reference element "CrossReference"; attribute "referenceId" is fm property cross-reference id; } 16. Enter a read/write rule to tell Structured FrameMaker how to reference the XML Tip For more information on creating read/write rules to manage the import and export process, see Chapter 16, “Translating Entities and Processing Instructions,” in Structure_Dev_ Guide.pdf located in the FrameMaker Online Manuals folder. 32 DTD in the XML instance when it is created. • On the next lines, type the following rule for referencing the dtd when exporting XML from Structured FrameMaker: writer external dtd is system "Chapter.dtd"; 17. Save ChapterReadWriteRules.fm. • Choose the File>Save command. Leave ChapterReadWriteRules.fm open. The Adobe® FrameMaker® 7.0 XML Cookbook Enabling Namespaces Enabling Namespaces What Namespaces are and why they are useful If you work with XML DTDs long enough, you'll probably find you sometimes want to work within one main DTD but also use XML objects from another DTD or Schema. When that happens, you'll want to use Namespaces. XML uses Namespaces to differentiate between XML coming from different DTDs or Schemas. A Namespace qualifies element names with a Namespace prefix, for example, ns:element. So, for example, if you have a table element in both a furniture catalog and an XHTML file, you could use the qualified elements furniture:table and xhtml:table in your document, so you would know from which DTD or schema each arose. In this way, Namespaces prevent names from “colliding.” More importantly they identify and differentiate XML applications such as XSLT, SVG, VoiceXML, and any XML applications that you create yourself. Namespaces are defined by the W3C Namespaces specification at http://www.w3.org/TR/ REC-xml-names/. How FrameMaker 7.0 handles Namespaces Structured FrameMaker 7.0 can be set to preserve Namespaces when importing and/or exporting XML. You can allow, create, and apply Namespaces to elements while working in your structured documents. Enabling Namespaces in structapps.fm To enable the proper handling of Namespaces when importing or exporting XML, add the Namespace element and its Enable child element to your structapps.fm file. The Adobe® FrameMaker® 7.0 XML Cookbook 33 Enabling Namespaces 1. Open your structapps.fm file if it is not already open. 2. Add the “Namespace” element to your “TechPubs XML” application. • In the Structure View, locate the “TechPubs XML” application and click below the Template element. Insertion point 34 • From the Element Catalog, insert a “Namespace” element. • From the Element Catalog, insert an “Enable” element. The Adobe® FrameMaker® 7.0 XML Cookbook Enabling Namespaces The Namespace structure in structapps.fm should look like this: Namespace enabled This setting in the structapps.fm file is to prepare Structured FrameMaker for XML import and export. An upcoming lesson in the XML Cookbook will take you through the steps to assign a Namespace to a Structured FrameMaker element. • Save structapps.fm and read it into Structured FrameMaker’s memory using the File>StructureTools>Read Application Definitions command. The Adobe® FrameMaker® 7.0 XML Cookbook 35 Enabling Namespaces 36 The Adobe® FrameMaker® 7.0 XML Cookbook Document Schemas Document Schemas The Element Definition Document—better known as the EDD—controls the order and use of the elements in your structured documents. The EDD is like an XML DTD or Schema, or an SGML DTD, but it is expressed in Structured FrameMaker using elements. EDDs contain element and attribute definitions similar to those in a DTD, but it can also include formatting rules. Creating an EDD from a DTD An EDD can be created from scratch or it can be created by converting an existing DTD. In this lesson, you will convert Chapter.dtd into an EDD, edit the EDD for correctness, and add formatting rules. Importing a DTD into Structured FrameMaker 1. Copy Chapter.dtd located in your “App” folder to your “Practice” folder. Typically the DTD you need to convert is not in the folder where your content XML files are located. This creates a problem when you want to open a DTD in Structured FrameMaker because your XML application specifies that the read/write rules file that will be used to create the EDD is in a folder named “App” nested in a folder in the current folder containing the DTD. There are two easy ways to fix this file location problem: 1) Create a separate XML application to be used only when opening DTDs; or 2) Place a copy of the DTD in a folder that is appropriate for your XML application. For the XML Cookbook you will make a copy of the DTD and place it in the “Practice” folder. For Windows: • Navigate to the “App” folder. • Select the Chapter.dtd file. • Choose the Edit>Copy command. • In the File Manager, navigate to the “Practice” folder. • Choose the Edit>Paste command. For Macintosh: • In the Finder, open the “Practice” folder. • Double-click the “App” folder to open it. With the Option key down, click and drag the Chapter.dtd file to the window banner of the “Practice” folder and release. For Unix: • • Use Unix commands to copy Chapter.dtd from the “App” directory to the “Practice” directory. 37 Document Schemas 2. From the “Practice” folder, open Chapter.dtd as a DTD in Structured FrameMaker. • Choose the File>Structure Tools>Open DTD command. • Navigate to the “Practice” folder and select Chapter.dtd. Make sure that you choose Chapter.dtd in the “Practice” folder and not the “App” folder. If you do choose the wrong copy of the DTD, Structured FrameMaker will generate an error saying that it can not locate the ChapterReadWriteRules.fm file. This is because the Structured FrameMaker structapps.fm application rule for 38 Document Schemas locating the read/write rules file refers to the “App” folder at the same level as the file that is being opened or imported. • Click the Open button. The Set Application dialog window appears. • Tip If you do not see the “TechPubs” application in the “User Structured Application” drop-down menu, it is because Structured FrameMaker has not “read” your structapps.fm file. Open the structapps.fm file that contains the “TechPubs” XML application, and “read” it into memory using the File>Structure Tools>Read Application Definitions. Choose “TechPubs” from the Use Structured Application drop-down menu, and click the Continue button. The “TechPubs” item in the list is a reference to the “TechPubs” application you created in structapps.fm. Structured FrameMaker added it to the Applications list when you read structapps.fm into memory. Choosing the “TechPubs” application tells Structured FrameMaker to use the “TechPubs” settings when converting the DTD. Errors will appear if the DTD is invalid, if a read/write rule has a syntax error, or if there are any missing files referenced in structapps.fm. • Correct any errors and repeat Step 1. The following example of an error log provides you with information about the error and, in many cases, a link to the file and location of the error. Hypertext link to error 39 Document Schemas If you have trouble opening the DTD and would like to skip to the next section of the XML Cookbook, you can use the completed EDD located in the Completed folder. Copy ChapterEDD.fm from the “Completed” folder to the “App” folder. The new EDD appears. Structured FrameMaker includes your application name at the beginning of the EDD. Notice that the EDD elements and attributes reflect the mappings that you created in your read/write rules document. • Locate the “StructuredApplication” element. Application name Notice that the name of the application has been set to “TechPubs.” When you export a Structured FrameMaker document to XML, Structured FrameMaker will automatically choose the “TechPubs” application because of this reference in the EDD. 3. 40 Save the EDD as ChapterEDD.fm. • Choose the File>Save As command. • Navigate to the “App” folder in your “Practice” folder. Document Schemas • Type ChapterEDD.fm in the file name field. • Click the Save button. Finishing the DTD Conversion To finish the EDD development process, you have several steps to complete. You will now add formatting rules to your element definitions. Collapsing and expanding elements: Collapsing elements in the Structure View helps keep the Structure View compact. You can expand elements as you need to work with them, and collapse them when are finished with them. Collapsing elements makes it easier to scroll through longer, complex structures. When an element is collapsed, all of its children are hidden, and the image in the Structure View changes to indicate that the element is collapsed. Collapsed element Expanded element 41 Document Schemas • To expand elements, in the element’s bubble, to the left of the element name, click once on the plus (+) symbol to expand and once on the minus (-) symbol to collapse an element. Expand symbol Collapse symbol Tip For information on adding formatting rules to an EDD, see Chapter 9, “Text Format Rules for Containers, Tables, and Footnotes,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Working with the Element Catalog The Element Catalog is an intelligent, context-sensitive list of the elements in a document. The elements displayed in the scroll list change according to the location of the insertion point or current selection. The Element Catalog also contains commands to insert, wrap, and change elements. The process of using the Element Catalog to insert elements is called Guided Editing because the Element Catalog guides the writer by helping them choose only valid elements. A valid element will have a special symbol next to its name in the Element Catalog. TABLE 1. Symbol Meaning This element is Valid at the current location This element is an inclusion and is valid anywhere in the parent element This element is valid in the current element but will be incomplete This element is valid in the current element, however inserting it will make elements after it invalid No symbol 42 This element is not valid at the current location Document Schemas Defining Highest-level Elements An XML document has a root element that is defined in the DTD declaration. Structured FrameMaker requires that you declare at least one element as a root element but also allows you to declare any number of elements as root elements. This capability makes it easy to work with document fragments. The EDD is a structured document. You will edit it with the document’s element boundaries turned on and the Element Catalog and Structure View open. 1. Turn on Element Boundaries and open the Element Catalog and Structure View. • Choose the View>Element Boundaries command. • Choose the Element>Element Catalog command. • Click the Structure View icon located in the top right-hand corner of the document window. When Structured FrameMaker converts a DTD, the first element encountered in the DTD is assumed to be the root element. In the EDD, notice that the “Chapter” element has already been defined as “Valid at Highest Level.” 2. 3. Define the “Section” element to be “Valid at Highest Level.” • In the Structure View, locate the “Section” element. • Click above the “GeneralRule” element. • Insert a “ValidHighestLevel” element. Save your changes. • Choose the File>Save command. Changing Element Definitions As you look through the EDD, you will notice that the read/write rules were applied to the element definitions. For example, the “Graphic” element is a graphic element type rather than a container element type. You can modify the EDD to correct any conversion errors or to change elements for which you did not create read/write rules. For example, the “IndexEntry” element in your EDD needs to have its marker type identified. 1. Tip For information on defining markers in an EDD, see Chapter 11, “Setting a marker type,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Edit the “IndexEntry” element definition to add an index marker type. • Locate the “IndexEntry” element. • Click to the right of the “Marker” element. Insertion point 43 Document Schemas • Insert an “InitialObjectFormat” element. • Insert an “AllContextsRule” element. • Insert a “MarkerType” element. • Insert an “Index” element. The “IndexEntry” element will use the “Index” marker type. 44 Document Schemas 2. Tip For information on defining All Context Rules and specific Context Rules in an EDD, see Chapter 9, “All-context Rules and Context-specific rules,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. Edit the “FirstUse” element to define it as a text range element. For this exercise, you will use the “AllContextsRule” element that will be defined later. • Locate the “FirstUse” element. • Click after the “GeneralRule” element. Insertion point • Insert a “TextFormatRules” element. • Insert an “AllContextRule” element. 45 Document Schemas • Insert a “TextRangeFormatting” element. Notice that Structured FrameMaker has inserted a “TextRange” element. 3. Save your changes. • Choose the File>Save command. Adding Auto-Insertions Structured FrameMaker elements can have their first child element automatically inserted. Structured FrameMaker allows you to define as many levels of insertion for child elements as you need. This saves the step of the author having to select the child element from the element catalog—the child element and the insertion point will automatically appear when the parent element is inserted. Tip For information on defining auto-insertion rules in an EDD, see Chapter 8, “Inserting descendants automatically in containers,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 46 In this exercise you will define auto-insertions for the “Chapter”, “TopicPara”, “Section”, and “Figure” elements. Document Schemas 1. Define auto-insertion for the “Chapter” element. • Locate the “Chapter” element in the Structure View. • Collapse the ValidHighestLevel element and the Attribute List element to make the structure easier to read. 47 Document Schemas • Click at the end of the “Container” element (after the “GeneralRule” and “AttributeList” elements. Insertion point • Insert an “AutoInsertions” element. The “Insert Child” element is inserted for you. • 2. 48 Type Head Define auto-insertion for the “TopicPara” element. • Locate the “TopicPara” element in the Structure View. • Click at the end of the “Container” element. • Insert an “AutoInsertions” element. • Type TopicXRef Document Schemas 3. 4. 5. Define auto-insertion for the “Section” element. • Locate the “Section” element in the Structure View. • Click at the end of the “Container” element. • Insert an “AutoInsertions” element. • Type Head Define auto-insertion for the “Figure” element. • Locate the “Figure” element in the Structure View. • Click at the end of the “Container” element. • Insert an “AutoInsertions” element. • Type Graphic Save your changes. • Choose the File>Save command. Adding Format Rules The majority of work in the EDD involves defining element format rules. Formats may be applied to elements unconditionally (in all cases); or conditionally depending on an element’s context and/or attribute values. If the latter, you must specify context rules. There are several methods you can use to specify formatting characteristics for elements: Tip Elements inherit formats from their parent elements except where the element references a paragraph or character style; therefore, it may not be necessary to define formatting for all elements. To realize the greatest benefit of format inheritance, try to associate paragraph formats only to the higher level elements. For information on defining element paragraph format rules in an EDD, see Chapter 9, “Paragraph formatting,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. • • • Reference paragraph and character styles in the document’s template. 1. Associate the “TopicHead” paragraph format with the “TopicHead” element. Specify one or more formatting characteristics in the EDD. Define an arbitrary group of formatting characteristics, give it a name, and reference it. Element Paragraph Formatting: Paragraph formats (styles) can be assigned to elements. When the element is inserted by the author, it is automatically formatted with the paragraph tag. • Locate the “TopicHead” element. • Click after the “GeneralRule” element. Insertion point 49 Document Schemas 2. 3. 50 • Insert a “TextFormatRules” element. • Insert a “ElementPgfFormatTag” element. • Type TopicHead Associate the “TopicPara” paragraph format with the “TopicPara” element. • Locate the “TopicPara” element. • Click after the “AutoInsertions” element. • Insert a “TextFormatRules” element. • Insert an “ElementPgfFormatTag” element. • Type TopicPara Associate the “FigurePara” paragraph format with the “Figure” element. • Locate the “Figure” element. • Click after the “AutoInsertions” element. • Insert a “TextFormatRules” element. • Insert an “ElementPgfFormatTag” element. • Type FigurePara Document Schemas 4. 5. Associate the “Caption” paragraph format with the “Caption” element. • Locate the “Caption” element. • Click after the “GeneralRule” element. • Insert a “TextFormatRules” element. • Insert an “ElementPgfFormatTag” element. • Type Caption Save your changes. • Choose the File>Save command. Element Character Formatting: Character formats can be assigned to text range elements. When the element is inserted by the author, it is automatically formatted with the character tag. Tip For information on defining element range format rules in an EDD, see Chapter 9, “Text Range formatting,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. Associate the “FirstUse” character format with the “FirstUse” element in all contexts. • Locate the “FirstUse” element. 51 Document Schemas • Click after the “TextRange” element. Insertion point • 52 Insert a “CharacterFormatTag” element. Document Schemas • 2. Type FirstUse Save your changes. • Choose the File>Save command. All Context Formatting: All Context Formatting rules apply to an element regardless of its context. Formatting can be applied by either associating a paragraph format or by supplying specific property values. 1. Define an “AllContextsRule” for the “Head” element. • Locate the “Head” element. 53 Document Schemas • Collapse the “AttributeList” element. Collapsed element • Click after the “AttributeList” element. Insertion point 54 • Insert a “TextFormatRules” element. • Insert an “AllContextsRule” element. Document Schemas • Insert a “ParagraphFormatting” element. • Insert a “PropertiesFont” element. 55 Document Schemas 56 • Insert a “Family” element. • Type Times New Roman Document Schemas • Click after the “Family” element. • Insert a “Color” element. 57 Document Schemas • 2. Type HeadingColor Define an “AllContextsRule” for the “Para” element. • Locate the “Para” element. • Click after the “GeneralRule” element. • Insert a “TextFormatRules” element. • Insert an “AllContextsRule” element. • Insert a “ParagraphFormatting” element. Set the Font Properties. • Insert a “PropertiesFont” element. • Insert a “Family” element. • Type Arial • Click after the “Family” element. • Insert a “Size” element. • Type 9pt • Click after the “PropertiesFont” element. Set the Basic Properties. 58 • Insert a “PropertiesBasic” element. • Insert an “Indents” element. • Insert a “FirstIndent” element. • Type 10pt • Click after the “Indents” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceAbove” element. Document Schemas 3. • Type 5pt • Click after the “ParagraphSpacing” element. • Insert a “LineSpacing” element. • Insert a “Height” element. • Type 13pt Save your changes. • Choose the File>Save command. Context Formatting: Context Formatting Rules apply formatting to an element when it falls in a specific context in the element hierarchy. Formatting can be applied by either associating a paragraph format or defining specific property values. 1. Define a context rule for the “Para” element so that the first paragraphs of a “Chapter” are italicized. • Locate the “Para” element. • Collapse the “AllContextsRule” element. Collapsed element 59 Document Schemas • Click after the “AllContextsRule” element. Insertion point • Insert a “ContextRule” element. Notice that the “Specification” element is automatically inserted. • Type Chapter • Click below the “Specification” element. • Insert a “ParagraphFormatting” element. • Insert a “PropertiesFont” element. • Insert an “Angle” element. The “Italic” element is automatically inserted. 2. Save your changes. • Choose the File>Save command. Level Formatting: Formatting rules can be applied according to the level or nesting of elements. 60 Document Schemas Tip For information on defining level format rules in an EDD, see Chapter 9, “Level rules,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. Define context rules for four levels of the “Head” element. • Locate the “Head” element. • Collapse the “AllContextsRule” element. Collapsed element • Click after the “AllContextsRule” element. Insertion point 61 Document Schemas • Insert a “LevelRule” element. Notice that the “Count Ancestors” element is automatically inserted. • 62 Type Chapter | Section Document Schemas • Click after the “CountAncestors” element. Insertion point • Insert an “If” element. Notice that the “Specification” element is automatically inserted. 63 Document Schemas • Type 1 • Click after the “Specification” element. Insertion point 64 Document Schemas Tip Context Labels are useful for identifying elements to be used in a cross-reference or when generating a table of contents. • Insert a “ContextLabel” element. • Type Level1 65 Document Schemas • Click after the “ContextLabel” element. Insertion point • Insert a “ParagraphFormatting” element. Set the Pagination Properties. 66 • Insert a “PropertiesPagination” element. • Insert a “Placement” element. • Insert an “AcrossAllColumnsAndSideHeads” element. • Click after the “Placement” element. • Insert a “StartPosition” element. • Insert a “TopOfRightPage” element. • Click after the “PropertiesPagination” element. Document Schemas Set the Font Properties. • Insert a “PropertiesFont” element. • Insert a “Size” element. • Type 30pt • Click after the “Size” element. • Insert a “Weight” element. • Insert a “Bold” element. • Click after the “PropertiesFont” element. Set the Basic Properties. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceBelow” element. • Type 18pt • Click after the “SpaceBelow” element. • Insert a “SpaceAbove” element. • Type 17pt • Click after the “ParagraphSpacing” element. • Insert a “LineSpacing” element. • Insert a “Height” element. • Type 30pt • Click after the “PropertiesBasic” element. Set the Numbering Properties. • Insert a “PropertiesNumbering” element. • Insert an “AutonumberFormat” element. • Type C:Chapter: • Collapse the “If” element to help make the structure easier to navigate. • Click after the “If” element. Create the Level 2 context rule. • Insert an “ElseIf” element. • Type 2 • Click after the “Specification” element. • Insert a “ContextLabel” element. • Type Level2 • Click after the “ContextLabel” element. • Insert a “ParagraphFormatting” element. Set the Pagination Properties. • Insert a “PropertiesPagination” element. • Insert a “Placement” element. 67 Document Schemas • Insert an “AcrossAllColumnsAndSideHeads” element. • Click after the “PropertiesPagination” element. • Insert a “PropertiesFont” element. • Insert a “Size” element. • Type 20pt • Click after the “PropertiesFont” element. Set the Basic Properties. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceBelow” element. • Type 0pt • Click after the “SpaceBelow” element. • Insert a “SpaceAbove” element. • Type 20pt • Click after the “ParagraphSpacing” element. • Insert a “LineSpacing” element. • Insert a “Height” element. • Type 20pt • Collapse the “ElseIf” element to make the structure easier to navigate. • Click after the “ElseIf” element. Create the Level 3 context rule. • Insert an “ElseIf” element. • Type 3 • Click after the “Specification” element. • Insert a “ContextLabel” element. • Type Level3 • Click below the “ContextLabel” element. • Insert a “ParagraphFormatting” element. Set the Pagination Properties. 68 • Insert a “PropertiesPagination” element. • Insert a “Placement” element. • Insert a “SideHead” element. • Insert an “Alignment” element. • Insert a “FirstBaseline” element. • Click after the “PropertiesPagination” element. • Insert a “PropertiesFont” element. • Insert a “Size” element. • Type 10pt • Click after the “Size” element. Document Schemas • Insert a “Family” element. • Type Arial • Click after the “Family” element. • Insert a “Weight” element. • Insert a “Bold” element. • Click after the “PropertiesFont” element. Set the Basic Properties. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceBelow” element. • Type 0pt • Click after the “SpaceBelow” element. • Insert a “SpaceAbove” element. • Type 20pt • Click after the “ParagraphSpacing” element. • Insert a “LineSpacing” element. • Insert a “Height” element. • Type 12pt • Collapse the “ElseIf” element. • Click after the “ElseIf” element. Create the Level 4 context rule. • Insert an “ElseIf” element. • Type 4 • Click after the “Specification” element. • Insert a “ContextLabel” element. • Type Level4 • Click after the “ContextLabel” element. • Insert a “ParagraphFormatting” element. Set the Pagination Properties. • Insert a “PropertiesPagination” element. • Insert a “Placement” element. • Insert a “RunInHead” element. • Insert a “DefaultPunctuation” element. • Type . • Click after the “PropetiesPagination” element. • Insert a “PropertiesFont” element. • Insert a “Size” element. • Type 9pt • Click after the “Size” element. 69 Document Schemas • Insert a “Family” element. • Type Arial • Click after the “Family” element. • Insert a “Weight” element. • Insert a “Bold” element. • Click after the “Weight” element. • Insert a “Color” element. • Type Black • Click after the “Color” element. • Insert a “Spread” element. • Type 5% • Click after the “PropertiesFont” element. Set the Basic Properties. 2. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceAbove” element. • Type 5pt • Click after the “ParagraphSpacing” element. • Insert a “LineSpacing” element. • Insert a “Height” element. • Type 13pt • Click after the “Height” element. • Insert a “Fixed” element. Save your changes. • Choose the File>Save command. Prefix and Suffix Formatting: Formatting rules can be defined to specify prefix and suffix text for an element. 70 Document Schemas Tip For information on defining prefix and suffix formatting rules in an EDD, see Chapter 9, “Defining prefixes and suffixes,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. Modify the “TopicPara” element to include the prefix characters “->” • Locate the “TopicPara” element. • Click after the “TextFormatRules” element. Insertion poin 71 Document Schemas 72 • Insert a “PrefixRules” element. • Insert an “AllContextsRule” element. Document Schemas • Insert a “Prefix” element. • Type -> 73 Document Schemas 2. • Click after the “Prefix” element. • Insert a “TextRangeFormatting” element. Save your changes. • 74 Choose the File>Save command. Document Schemas First and Last Paragraph Formatting: Formatting rules can be defined to specify formatting to the first and last paragraph contained in an element. Tip For information on defining first and last formatting rules in an EDD, see Chapter 9, “Writing first and last formatting rules,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. Modify the “TopicList” element to add extra space above the first, and below the last paragraphs in list. • Locate the “TopicsList” element. • Click after the “GeneralRule” element. • Insert a “FirstParagraphRules” element. • Insert an “AllContextsRule” element. Set the Basic Properties. • Insert a “ParagraphFormatting” element. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceAbove” element. • Type 12pt • Click after the “FirstParagraphRules” element. • Insert a “LastParagraphRules” element. • Insert an “AllContextsRule” element. • Insert a “ParagraphFormatting” element. Set the Basic Properties. 2. • Insert a “PropertiesBasic” element. • Insert a “ParagraphSpacing” element. • Insert a “SpaceBelow” element. • Type 24pt Save your changes. • Choose the File>Save command. Object Formatting: Initial Object Formatting can be defined for Structured FrameMaker objects such as markers, cross-references, and graphics. The Initial Object Format defines how the object is inserted into the document. Tip For information on object formatting rules in an EDD, see Chapter 11, “Object Format Rules,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. 2. Define the Initial Object Format for the “TopicXRef” cross-reference element. When a “TopicXRef” element is inserted, it will be formatted with the “TopicXRef” crossreference format. • Locate the “TopicXRef” element. • Insert an “InitialObjectFormat” element. • Insert an “AllContextsRule” element. • Insert a “CrossReferenceFormat” element. • Type TopicXRef Save your changes. • Choose the File>Save command. Context Rules using Attribute Values: In a context rule, you can check for a specific attribute value and apply formatting based on the value. The formatting can be associated 75 Document Schemas with text or objects and can control certain behaviors of Structured FrameMaker. For example, a graphic element can be pasted or imported into an anchored frame, and an attribute value can control how Structured FrameMaker prompts the user to either import a graphic or to create an anchored frame. Tip For information on defining context formatting rules that use attribute values in an EDD, see Chapter 9, “Writing contextdependent format rules,” in Structure_Dev_ Guide.pdf, located in the FrameMaker Online Manuals folder. 1. 2. Modify the “Graphic” element to either display the Import Graphic dialog box or the Anchored Frame dialog box according to which attribute value the user selects. • Locate the “Graphic” element. • Click after the “AttributesList” element. • Insert an “InitialObjectFormat” element. • Insert a “AllContextsRule” element. • Insert an “AnchoredFrame” element. Save your changes. • Choose the File>Save command. Importing the EDD into a Structured FrameMaker template Most FrameMaker users have created FrameMaker templates that conform to their organization’s style guide for the use of logos, backgrounds, fonts, page size, adornment, etc. ChapterTemplate.fm has been prepared for you. It contains master pages, reference pages, paragraph and character formats, etc. You will import ChapterEDD.fm into ChapterTemplate.fm using Structured FrameMaker to create a structured template that will validate the structured document’s content against the business rules established first in the DTD, and then modified in the EDD. 1. Open ChapterTemplate.fm. • Choose the File>Open command. • Navigate to the “App” folder in the “Practice” folder, and highlight ChapterTemplate.fm. For Macintosh users, ensure that the “Show All Files” button is selected. • Click the Open button. The template contains only formatting. 2. Import ChapterEDD.fm into ChapterTemplate.fm From ChapterTemplate.fm, choose the File>Import>ElementDefinitions command. Be sure that you are starting from ChapterTemplate.fm. • • Select ChapterEDD.fm from the “Import From Document” drop-down menu. Import from Document drop-down menu 76 Document Schemas • Click the Import button 3. If no errors occur, an alert will appear indicating that the Element Definitions have been imported successfully from the EDD. 4. If errors occur, review them in the Element Catalog Manager Report and correct them in the EDD. Repeat Step 2 to import the EDD into the template. Your template is now structured. 5. Save ChapterTemplate.fm. 6. Close ChapterTemplate.fm. • • Choose the File>Save command. Choose the File>Close command. 77 Document Schemas 78 Reading an XML Instance Reading an XML Instance So far we have referenced all of the components necessary to open or import an XML instance. Your structapps.fm file should now have the following file references: • • • ChapterTemplate.fm—Structured FrameMaker template ChapterWriteRules.fm—FrameMaker read/write rules Chapter.dtd—XML DTD. We have set all of the properties necessary to open an XML instance. Your structapps.fm file should now have the following application settings: • • Namespace—Enabled DOCTYPE—for Chapter and Section. To open an XML instance, use Structured FrameMaker’s Open command. 1. Open ColorDoc.xml • Choose the File>Open command. • Navigate to the “Practice” folder and select ColorDoc.xml. • Click the Open button. The “Use Structured Application” dialog box appears. Tip The Use Structured Application dialog appears when opening or importing an XML document if Structured FrameMaker cannot determine which XML Application to use. This can happen when Structured FrameMaker cannot match the DOCTYPE of the XML document to a DOCTYPE in an XML Application or when the same DOCTYPE appears in more than one XML Application. • Select “TechPubs” from the “Use Structured Application” drop-down menu, and click the Continue button. The formatted Structured FrameMaker document appears. 2. Save the document as ColorDoc.fm in your “Practice” folder. • Choose the File>Save As command. • Type ColorDoc.fm in the file name field. • Click the Save button. 79 Reading an XML Fragment Reading an XML Fragment Importing an XML Fragment into a Structured FrameMaker is as easy as importing any type of file into a document. To import an XML fragment, use Structured FrameMaker’s Import File command. 1. Open ColorDoc.fm if it is not already open. 2. In the Structure View, place your insertion point after the last “Section” element. Insertion point 3. Tip When importing text or graphics into a FrameMaker or Structured FrameMaker document, choose Import By Reference if you want to keep a link to the external final or Copy Into Document if you want to import a copy. A referenced object cannot be edited in the FrameMaker or Structured FrameMaker document. Import the XML fragment ColorSection1.xml into ColorDoc.fm. • Choose the File>Import>File command. • For Macintosh users, in the Import File dialog, select XML from the Format: drop-down menu. Navigate to your “Practice” folder, select ColorSection1.xml, turn on Copy into Document, and click Import. • Copy into document 80 Reading an XML Fragment • For Windows and Unix, in the Unknown File Type dialog box, select XML, and click the Convert button. The XML fragment is imported into the Structured FrameMaker document. • Save the document. • In the Structure View, take a look at the structured content that has been imported. Notice that the new content is a section. 81 Reading an XML Fragment Notice that the “Section” element has an asterisk at the end of its name. This indicates that this element has a namespace associate with it. Namespace indicator 82 • In the Structure View, select the “Section” element with the Namespace reference. • Choose the Element>Namespaces command. Reading an XML Fragment The Namespaces Dialog window appears. • Review the settings for the Section Namespace. The Declared Namespace is “RefDB” and the path is “ColorInfoDB”. These settings could indicate that the content is referenced from a database named “ColorInfoDB”. • 4. Close the Namespaces window. Import the second XML fragment ColorSection2.xml. • In the Structure View, place your insertion point after the last “Section” element. • Import the XML fragment ColorSection2.xml into Color.fm. • Choose the File>Import>File command. • For Macintosh users, in the Import File dialog, select XML from the Format: drop-down menu. 83 Reading an XML Fragment Tip When importing text or graphics into a FrameMaker or Structured FrameMaker document, choose Import By Reference if you want to keep a link to the external file or Copy Into Document if you want to import a copy. A referenced object cannot be edited in the FrameMaker or Structured FrameMaker document. • Navigate to your “Practice” folder, select ColorSection2.xml, turn on Copy into Document, and click Import. Copy into document • For Windows and Unix, in the Unknown File Type dialog box, select XML, and click the Convert button. The XML fragment is imported into the Structured FrameMaker document. • 84 Save the document. Structured Authoring Structured Authoring Structured FrameMaker provides you with a full set of authoring and editing features to create simple and complex technical and business documents. The skills you’ve developed so far in setting up your XML Application are the same skills you will use to author and edit content. Editing Documents When creating and editing content in Structured FrameMaker, you use the Structure View to help navigate and manage the structure of your document, and you use the Element Catalog to guide you when inserting or moving elements as you work. 1. Open ColorDoc.fm if it is not already open. 2. Open the Element Catalog and Structure View. You may optionally turn on element boundaries. Editing Attributes The Chapter element has an “AuthorName” attribute, which is required but has not yet been entered. Editing attributes is easy with the Attribute Editor. 1. Enter your name in the “AuthorName” attribute. • In the Structure View, click on the “Chapter” element. • Click on the Attributes Editor icon located at the top right corner of the document window. Attribute Editor 85 Structured Authoring • Select the “AuthorName” attribute in the Attribute scroll list. • Delete the contents from the Attibute Value field. Attribute Value field • Type your name. • Click the Set Value button. Notice that the new value has appeared next to the “AuthorName” attribute in the Structure View. 86 Structured Authoring • Close the Attributes dialog window. Invalid and missing elements Whenever an element does not conform to the document’s element definitions as determined by the template designer, the Structure View identifies the error for you. Three types of errors can occur: a missing element, an undefined element, or a misplaced element. In the Structure View, these elements are represented with special symbols. A square hole appears if a required element is missing. Use the Element Catalog to determine the valid elements that can be inserted. Missing element A vertical dotted line appears from the location of the misplaced element. Move the invalid element to a new position or insert elements around the element to correct the error. Beginning of misplaced element Adding new content Text: Structured FrameMaker’s Guided Editing interface helps you to follow the rules of your Schema, thus building a valid document. 87 Structured Authoring 1. In the Structure View, set the insert point before the first “Section” element. Insertion point Tip The Element Catalog view can be customized using the Options button. Initially, the displayed elements are strictly valid. 88 Notice that the Element Catalog immediately refreshes to display the next set of valid elements and that “Section” is valid in this location. Valid elements Structured Authoring 2. In the Element Catalog select “Section” and click the insert button. Notice that the Head element is automatically inserted. Head element is automatically inserted Also notice that the Structure View indicates missing elements with a red square hole. Missing elements 89 Structured Authoring Tip You can insert an element from the Element Catalog by simply double-clicking on it. You can also insert elements using quick keys. Type CTRL 1 to go into insert mode. Notice that the status box at the bottom of the window shows I: (for insert mode). Type the first letter of the element you want to select and that element will appear in the status box. Press Enter to select the element. 3. Type “This is a new section”. 4. In the Structure View, set the insert point after the Head element. 5. 6. Insert a Para element. Type “This is a new paragraph.” 7. Press the Enter key. Since Para is repeatable, Structured FrameMaker automatically inserts another Para element. Inserting invalid elements: There are times when you want to insert an element out of context. This can be accomplished by changing the display options in the element catalog. 1. Click on Options in the Element Catalog. 2. Click on All Elements and Set. 3. Notice that additional elements are showing. Structured FrameMaker indicates the valid ones with a check mark; however, it is now possible to insert out-of-context elements as well. 4. If you insert an out-of-context element, you can move it to a valid location in the Structure View. Adding graphics: Structured FrameMaker supports many graphic types. You will import several SVG and TIFF images into your XML Cookbook document. 1. 90 Import the SVG graphic addcolor.svg into your document. • In the document window, locate the paragraph that begins with “If you combine 100% of red, green, and blue... ”. Use the Edit>Find/Change command to help you locate this text. • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. Structured Authoring The Anchored Frame dialog window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. • With the anchored frame still selected, choose the File>Import>File command. • For Macintosh users, ensure that the “Show All Files” check box is selected. • Navigate to the “ART” folder in the “Practice” folder and select AddColor.svg. • Select the Import By Reference option. • Click the Import button. 91 Structured Authoring Tip Scalable Vector Graphics (SVG) are imported and rasterized for view, PDF, and printing from FrameMaker. FrameMaker also stores the SVG XML markup with the graphic so that the graphic can be exported to XML in the original SVG format. 92 • For Windows, in the Unknown File Type dialog, select SVG. • For Windows, click the Convert button. • In the Import SVG dialog, click the Set button. The SVG graphic is imported into the anchored frame. Structured Authoring 2. Set the attributes of the Graphic element. • In the Structure View, double-click on the “Format” attribute. Double-click on Format attribute to edit it • From the drop-down menu, select “SVG”. Attribute Value drop-down menu SVG format Attribute value entered 93 Structured Authoring • Click the Set Value button. Set Value • In the Attribute Edit dialog, click the “Type” attribute. Type attribute selected • From the Attribute Value drop-down menu, select “ByReference”. ByReference attribute value 94 Structured Authoring • Click the Set Value button. Set Value • Click the Done button. Done button 3. Add a “Caption” element. • In the Structure View, click below the “Graphic” element. • From the Element Catalog, insert a “Caption” element. 95 Structured Authoring • In the “Caption” element, type the following caption text: Additive Color Model 4. Import the SVG graphic Subcolor.svg into your document. • In the document window, locate the paragraph that begins with “If you subtract red, green, or blue from white light... ” • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. The Anchored Frame window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. 96 • With the anchored frame still selected, choose the File>Import>File command. • For Macintosh users, ensure that the “Show All Files” check box is selected. • Navigate to the “ART” folder in the “Practice” folder, and select Subcolor.svg. • Select the Import By Reference option. • Click the Import button. • For Windows, in the Unknown File Type dialog, select SVG. • For Windows, click the Convert button. • In the Import SVG dialog, click the Set button. Structured Authoring The SVG graphic is imported into the anchored frame. 5. Set the attributes of the “Graphic” element. • 6. In the Structure View, double-click on the “Format” attribute. • From the drop-down menu, select “SVG”. • Click the Set Value button. • In the Attribute Edit dialog, click the “Type” attribute. • From the Attribute Value drop-down menu, select “ByReference”. • Click the Set Value button. • Click the Done button. Add a “Caption” element. • In the Structure View, click below the “Graphic” element. • From the Element Catalog, insert a “Caption” element. • In the “Caption” element, type the following caption text: Subtractive Color Model 7. Import the TIFF graphic Dotgain.tif into your document. • In the document window, locate the paragraph that begins with “When printed, small halftone dots make up lighter areas of an image... ” • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. The Anchored Frame window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. • With the anchored frame selected, choose the File>Import>File command. • Navigate to the “ART” folder in the “Practice” folder, and select Dotgain.tif. 97 Structured Authoring • Select the Copy Into Document option. • Click the Import button. • In the Imported Graphic Scaling dialog, click the Set button. Set button The TIF graphic is imported into the anchored frame. 8. 9. Set the attributes of the “Graphic” element. • In the Structure View, double-click on the “Format” attribute. • From the drop-down menu, select “TIF”. • Click the Set Value button. • In the Attribute Edit dialog, click the “Type” attribute. • From the Attribute Value drop-down menu, select “ByCopy”. • Click the Set Value button. • Click the Done button. Add a “Caption” element. • In the Structure View, click below the “Graphic” element. • From the Element Catalog, insert a “Caption” element. • In the “Caption” element, type the following caption text: Process screens at different angles 10. Import the TIFF graphic Seps.tif to your document. 98 • In the document window, locate the paragraph that begins with “To print color art on a commercial printing press... ” • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. Structured Authoring The Anchored Frame window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. • With the anchored frame selected, choose the File>Import>File command. • Navigate to the “ART” folder in the “Practice” folder, and select Seps.tif. • Select the Copy Into Document option. • Click the Import button. • In the Imported Graphic Scaling dialog, click the Set button. The TIF graphic is imported into the anchored frame. 11. Set the attributes of the “Graphic” element. • In the Structure View, double-click on the “Format” attribute. • From the drop-down menu, select “TIF”. • Click the Set Value button. • In the Attribute Edit dialog, click the “Type” attribute. • From the Attribute Value drop-down menu, select “ByCopy”. • Click the Set Value button. • Click the Done button. 12. Add a “Caption” element. • In the Structure View, click below the “Graphic” element. • From the Element Catalog, insert a “Caption” element. • In the “Caption” element, type the following caption text: Composite print and file separations 99 Structured Authoring 13. Import the TIFF graphic Chalf.tif into your document. • In the document window, locate the paragraph that begins with “Many variables—from photomechanical processes... ” • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. The Anchored Frame window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. • With the anchored frame selected, choose the File>Import>File command. • Navigate to the “ART” folder in the “Practice” folder and select Chalf.tif. • Select the Copy Into Document option. • Click the Import button. • In the Imported Graphic Scaling dialog, click the Set button. The TIF graphic is imported into the anchored frame. 14. Set the attributes of the “Graphic” element. • In the Structure View, double-click on the “Format” attribute. • From the drop-down menu, select “TIF”. • Click the Set Value button. • In the Attribute Edit dialog, click the “Type” attribute. • From the Attribute Value drop-down menu, select “ByCopy”. • Click the Set Value button. • Click the Done button. 15. Add a “Caption” element. • 100 In the Structure View, click below the “Graphic” element. Structured Authoring • From the Element Catalog, Insert a “Caption” element. • In the “Caption” element, type the following caption text: Halftone dots in a color proof after printing 16. Import the SVG graphic Resolution.svg to your document. • In the document window, locate the paragraph that begins with “A pixel is the smallest... ” • Place the insertion point after this “Para” element. • From the Element Catalog, insert a “Figure” element. The Anchored Frame window appears. • Enter the following values and choices in the Anchored Frame dialog window: Element Tag: Graphic Anchoring Position: Below Current Line Alignment: Left Cropped: Off Floating: Off Size: Width: 246 pt. Size: Height: 94 pt. • Click the New Frame button. An anchored frame is inserted. • With the anchored frame selected, choose the File>Import>File command. • For Macintosh users, ensure that the “Show All Files” check box is selected. • Navigate to the “ART” folder in the “Practice” folder and select Resolution.svg. • Select the Import By Reference option. • Click the Import button. • For Windows, in the Unknown File Type dialog, select SVG. • For Windows, click the Convert button. • In the Import SVG dialog, click the Set button. The SVG graphic is imported into the anchored frame. 17. Set the attributes of the “Graphic” element. • In the Structure View, double-click on the “Format” attribute. • From the drop-down menu, select “SVG”. 101 Structured Authoring • Click the Set Value button. • In the Attribute Edit dialog, click the “Type” attribute. • From the Attribute Value drop-down menu, select “ByReference”. • Click the Set Value button. • Click the Done button. 18. Add a “Caption” element. • In the Structure View, click below the “Graphic” element. • From the Element Catalog, insert a “Caption” element. • In the “Caption” element, type the following caption text: Image resolutions at 72 ppi and 300 ppi 19. Save your document. Inserting Cross-References: FrameMaker’s cross-reference feature enables the automatic updating of reference text. You will add cross-references to your Cookbook section headings in order to build a mini-table of contents at the beginning of your document. 1. Insert a “Contents” element near the beginning of ColorDoc.fm. • In the Structure View, scroll to the beginning of the element structure. • Click above the “Section” element. Insertion point • 102 From the Element Catalog, insert a “TopicsList’ element. Structured Authoring • From the Element Catalog, insert a “TopicHead” element. • Enter the text Contents • In the Structure View, click below the “TopicHead” element. Insertion point • From the Element Catalog, insert a “TopicPara” element. • In the Cross-Reference dialog window, select “Head(Level2)” in the Element Tags list. Element Tags list • In the Cross-Reference dialog window, select “The properties of color” in the Elements (in Document Order) list. Elements (in Document Order) list 103 Structured Authoring • In the Cross-Reference dialog window, click the Insert button. Insert button FrameMaker inserts the cross-reference and insets a cross-reference attribute value linking to the referenced “Head” element. Cross-reference attribute value • In the Structure View, click below the last “TopicPara” element. Insertion point 104 • From the Element Catalog, insert a “TopicPara” element. • In the Cross-Reference dialog window, select “Head(Level2)” in the Element Tags list. • In the Cross-Reference dialog window, select “Printing terminology” in the Elements (in Document Order) list. • In the Cross-Reference dialog window, click the Insert button. • In the Structure View, click below the last “TopicPara” element. • From the Element Catalog, insert a “TopicPara” element. Structured Authoring • In the Cross-Reference dialog window, select “Head(Level2)” in the Element Tags list. • In the Cross-Reference dialog window, select “Computer graphics” in the Elements (in Document Order) list. • In the Cross-Reference dialog window, click the Insert button. • In the Structure View, click below the last “TopicPara” element. • From the Element Catalog, insert a ‘TopicPara” element. • In the Cross-Reference dialog window, select “Head(Level2)” in the Element Tags list. • In the Cross-Reference dialog window, select “Common printing problems” in the Elements (in Document Order) list. • In the Cross-Reference dialog window, click the Insert button. • In the Structure View, click below the last “TopicPara” element. • From the Element Catalog, insert a TopicPara” element. • In the Cross-Reference dialog window, select “Head(Level2)” in the Element Tags list. • In the Cross-Reference dialog window, select “Bitmap image and output resolution” in the Elements (in Document Order) list. • In the Cross-Reference dialog window, click the Insert button. • Save your document. 105 Structured Authoring 106 Writing an XML Instance Writing an XML Instance To export an XML instance, use Structured FrameMaker’s Save As command. 1. Save ColorDoc.fm as XML. • Open ColorDoc.fm if it is not already open. • Choose the File>Save As command. • Enter ColorDoc.xml in the file name field. • Choose “XML” from the “Save As Type” or “Format” drop-down menu. • Click the Save button. The XML file is created. The “Use Application” dialog box did not appear because the application name “TechPubs” had been specified in the EDD. 2. Copy your SVG images to the XML folder. • 3. Copy your DTD to the XML folder. • 4. Locate the “ART” folder, and copy all of its contents to the XML folder. Locate the App folder and copy “Chapter.dtd”, “Chapter.xsl”, and “Chapter.css” to the “XML” folder. Open ColorDoc.xml and review its contents. • Using an ASCII text editor (not Structured FrameMaker), choose the File>Open command. • Locate and highlight ColorDoc.xml • Click the Open button. or, • Using Structured FrameMaker as your editor, choose the File>Open command. • Locate and highlight ColorDoc.xml • Hold down the Shift key (Windows and Unix) or the Option key (Macintosh) and click the Open button. 107 Writing XML with a CSS2 Stylesheet Writing XML with a CSS2 Stylesheet When you export your XML from Structured FrameMaker it is possible to generate a CSS2 stylesheet and have your XML reference it. This option is set in the structapps.fm file in the XML application you have defined. 1. Open your structapps.fm document if it is not already open. 2. Locate your “TechPubs” XML Application. 3. Click after the “Namespace” element. 4. Insert a “StyleSheets” element. 5. Insert a “GenerateCSS2” element. 6. Insert an “Enable” element. 7. Read structapps.fm. 8. Save ColorDoc.fm as XML. 9. Open ColorDoc.xml in an ASCII editor and notice the stylesheet reference. 10. Open ColorDoc.xml in Internet Explorer version 6 or greater, Netscape 6, or Opera 5 or greater. Notice that the xml is formatted using the CSS2 stylesheet. 108 Writing XML with an XSL Stylesheet Writing XML with an XSL Stylesheet When you export your XML from Structured FrameMaker you can have your XML reference an XSL stylesheet. This option is set in the structapps.fm file in the XML application you have defined. 1. Open your structapps.fm document if it is not already open. 2. Locate your “TechPubs” XML Application. 3. Delete the “CSSPreferences” element. 4. Within the “StyleSheets” element, insert an “XMLStyleSheets” element. The “xmlstylesheet” child element is automatically inserted. 5. Insert a “StyleSheetType” element. 6. Type “XSL”. 7. Click after the “StyleSheetType” element. 8. Inset a “StyleSheetURI” element. 9. Type “Chapter.xsl”. 10. Read structapps.fm. 11. Save ColorDoc.fm as XML. 12. Open ColorDoc.xml in an ASCII editor and notice the stylesheet reference. 13. Open ColorDoc.xml in Internet Explorer version 6 or greater, Netscape 6, or Opera 5 or greater. Notice that the XML is formatted using the XSL stylesheet. 109 Writing XML with an XSL Stylesheet Adobe, the Adobe logo, and FrameMaker are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries. Windows is either a registered trademark or trademark of Microsoft Corporation in the United States and/or other countries. Macintosh is a trademark of Apple Computer, Inc., registered in the United States and other countries. UNIX is a registered trademark of The Open Group. © 2002 Adobe Systems Incorporated. All rights reserved. 110
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.4 Linearized : No Modify Date : 2002:06:05 14:29:44-06:00 Create Date : 2002:04:24 11:16:25Z Page Count : 110 Creation Date : 2002:04:24 11:16:25Z Mod Date : 2002:06:05 14:29:44-06:00 Producer : Acrobat Distiller 5.0.5 (Windows) Author : Adobe Metadata Date : 2002:06:05 14:29:44-06:00 Creator : Adobe Title : UserGuide.book Page Mode : UseOutlinesEXIF Metadata provided by EXIF.tools