1 / 24

Standardize Formatting Across Documents and DTDs with Modular FOSIs

Standardize Formatting Across Documents and DTDs with Modular FOSIs. Suzanne Napoleon FOSIexpert, LLC www.FOSIexpert.com. Event hashtag is #PTCUSER10. Join the conversation!. The Challenge: Standardize Formatting.

liseli
Download Presentation

Standardize Formatting Across Documents and DTDs with Modular FOSIs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Standardize Formatting Across Documents and DTDs with Modular FOSIs Suzanne NapoleonFOSIexpert, LLC www.FOSIexpert.com

  2. Event hashtag is #PTCUSER10 Join the conversation!

  3. The Challenge: Standardize Formatting • Organizations mandate standardized formatting in order to safeguard corporate identity branding • However, documents, DTDs, and formatting specs change over time • When there are multiple FOSIs, the same edits must be made to all FOSIs affected by the changes • This approach is time-consuming and error-prone

  4. The Solution: Modular FOSIs Common formatting is coded in FOSI modules Individual FOSIs reference the appropriate modules When a module is edited, all FOSIs that reference that module are changed This approach makes it much easier to maintain standardized formatting over time

  5. FOSI #1 FOSI #2 FOSI-specific mix-and-match modules

  6. FOSI #1 FOSI #2 FOSI-specific Change a module to change the FOSIs mix-and-match modules

  7. The Technical Details A FOSI is an SGML document that adheres to the OutSpec DTD SGML file entities can be used in a FOSI A FOSI module is an SGML file entity

  8. The Process Review each FOSI and create charsubsets, pseudo-elements, and/or text entities, as appropriate, for any common code within a FOSI Compare all FOSIs to determine which share common formatting

  9. The Process, continued Develop a naming convention for FOSIs and modules that makes their purpose obvious Use .ent extension for modules to facilitate searching the file system Examples: basic-charsubsets.ent A4-pagesets.ent list-counters.ent

  10. The Process, continued Code the “desc”s directly in the .fos files: rsrcdesc secdesc pagedesc styldesc ftndesc

  11. The Process, continued Code FOSI-specific formatting directly in each .fos file For example: Code warning.txt=“Warning” in Book-English.fos Code warning.txt=“Warnung” in Book-German.fos

  12. The Process, continued Make as many file entities as needed for the following FOSI components and name them appropriately: hyphrule docdesc charfill charsubset counter envdesc stringdecl e-i-c floatloc footnote pageset ftnatt sectoken

  13. Create File Entity create_file_entity(cfe)creates a file entity with the selected content, prompts for the name of the entity and the file name or Public IC, and inserts the entity into the document

  14. Declare File Entity declare_file_entity(dfe) prompts for the name of the entity and the file name or the Public ID for the entity to be created

  15. File Entities Dialog

  16. Entities in .fos Files <!ENTITY std-charfills SYSTEM "std-charfills.ent"> <!ENTITY std-counters SYSTEM "std-counters.ent"> <!ENTITY std-stringdecls SYSTEM "std-stringdecls.ent"> <!ENTITY std-pagesets SYSTEM "std-pagesets.ent"> <!ENTITY std-charsubsets SYSTEM "std-charsubsets.ent"> <!ENTITY seriesA-charsubsets SYSTEM "seriesA-charsubsets.ent"> <!ENTITY seriesA-docdesc SYSTEM "seriesA-docdesc.ent"> <!ENTITY std-eics SYSTEM "std-eics.ent"> <!ENTITY seriesA-eics SYSTEM "seriesA-eics.ent"> <!ENTITY std-footnote SYSTEM "std-footnote.ent"> <!ENTITY std-ftnatts SYSTEM "std-ftnatts.ent">

  17. Entities in the Tagged FOSI Editor Insert references to the appropriate modules into each .fos file

  18. The Process, continued Compile each FOSI to incorporate changes Changes are not reflected in the FOSIs until they are compiled

  19. The Process, continued Document the modules referenced by each FOSI Be sure to update this documentation whenever you: Modify a module Add or delete references to a module

  20. Tips Alphabetize counters, strings, e-i-c’s, charsubsets, etc., before creating FOSI modules Alphabetize counters, strings, etc., in modules Compile frequently while developing modules Detect context errors sooner rather than later Format test documents regularly and look for unintended formatting changes

  21. Tips, continued Keep the documentation up to date: Modular FOSIs are only as good as their documentation

  22. “WYSIWYG is last-century technology!”

  23. Questions?

More Related