Multiple Outputs Why Single-Source?

Multiple Outputs Why Single-Source?

Sagehill Enterprises Single-source Publishing with What is Single-source DocBook XSL Publishing? ►Multiple outputs from single source file. ►Reusable content. Bob Stayton ►Modular writing. ►Assembled documents. Sagehill Enterprises ►“Write once, publish many”. DocBook Consulting http://www.sagehill.net email: [email protected] 831-566-8239 17 August 2005 Single-source Publishing with DocBook XSL 1 17 August 2005 Single-source Publishing with DocBook XSL 2 Multiple outputs Why Single-source? ►Print, PDF, HTML, slides, Help files. ►Reduce redundant writing. ►Different product versions. ►Writers can specialize. ►Different user levels. ►Update in a single place. ►Sight-impaired, WML, text-only. ►Users get more accurate information. ►Fewer words to translate. 17 August 2005 Single-source Publishing with DocBook XSL 3 17 August 2005 Single-source Publishing with DocBook XSL 4 What is DocBook? Why use DocBook? ►DTD for technical documentation. ►Designed for technical documentation. ►Related stylesheets and tools. ►Content kept separate from format. ►Started in 1991 as SGML, now XML. ►Open to computer processing. ►OASIS standard since 1998. ►Choose your publishing tools. ►Cross platform ►Automate your processing. 17 August 2005 Single-source Publishing with DocBook XSL 5 17 August 2005 Single-source Publishing with DocBook XSL 6 Copyright 2005 Bob Stayton 1 Sagehill Enterprises What’s the downside? Best for … ►XML learning curve. ►Multiple output formats. ►Investment in setup. ►Multiple releases over time. ►Technical staff needed. ►Large documentation sets. ►Batch processing environment. ►Shared authoring. 17 August 2005 Single-source Publishing with DocBook XSL 7 17 August 2005 Single-source Publishing with DocBook XSL 8 Who uses DocBook? What do you need? ► Sun ►DocBook DTD (XML version). ► IBM ►Writing tools. ► Microsoft ►XSL stylesheets. ► Hewlett Packard ►Processing tools. ► Symantec ► Red Hat, SuSE, Mandrakesoft ► Linux Documentation Project 17 August 2005 Single-source Publishing with DocBook XSL 9 17 August 2005 Single-source Publishing with DocBook XSL 10 Writing tools DocBook XSL stylesheets ►Notepad or other text editor. ►Open source project on SourceForge. ►XMLMind’s XMLEditor (free). ►Written in XSL. ►Morphon’s XML-editor (free). ►Stylesheet variant for each output form. ►Syntext’s Serna. ►Designed for customization. ►Blast Radius’s XMetal. ►Adapt to corporate style. ►Arbortext’s Epic Editor. 17 August 2005 Single-source Publishing with DocBook XSL 11 17 August 2005 Single-source Publishing with DocBook XSL 12 Copyright 2005 Bob Stayton 2 Sagehill Enterprises Getting to HTML XSLT processors ►xsltproc from Gnome’s xmlsoft.org ►Saxon 6 from SourceForge XML file ►Xalan Java from Apache XML project XSLT HTML Processor files DocBook Stylesheet 17 August 2005 Single-source Publishing with DocBook XSL 13 17 August 2005 Single-source Publishing with DocBook XSL 14 HTML or XHTML Getting to print ►Single file or multiple “chunks”. XML file ►Use CSS classes for styling. XSLT Processor FO file ►Post process with DocBook • HTML Help Workshop Stylesheet • Java Help indexer FO Processor PDF file 17 August 2005 Single-source Publishing with DocBook XSL 15 17 August 2005 Single-source Publishing with DocBook XSL 16 XSL-FO processors Automated print production ►XEP from RenderX. ►Stylesheet flows content onto pages. ►XSL Formatter from Antenna House ►Automatic TOC and index. ►FOP from Apache XML Project ►Automatic page breaking. ►Writer does not do formatting. 17 August 2005 Single-source Publishing with DocBook XSL 17 17 August 2005 Single-source Publishing with DocBook XSL 18 Copyright 2005 Bob Stayton 3 Sagehill Enterprises Tweaking for print Standard publishing features ►Front matter XML file ►Graphics InDesign PDF file ►Tables CS InDesign ►Glossaries template ►Bibliographies Tweak ►Indexes time 17 August 2005 Single-source Publishing with DocBook XSL 19 17 August 2005 Single-source Publishing with DocBook XSL 20 Technical publishing Special features ►Nested section levels. ►Profiling. ►Numbered figures, tables, examples. ►Modular documentation. ►Tasks and procedures. ►Cross referencing. ►Code synopses. ►Localization. ►Code examples. ►Running headers and footers. 17 August 2005 Single-source Publishing with DocBook XSL 21 17 August 2005 Single-source Publishing with DocBook XSL 22 Profiling Modular documentation ►aka Conditional text. ►Separate large documents into multiple ►Multiple versions from same file. XML files. ►Marked with profiling attributes: ►System entity != valid document. • os, userlevel, condition, etc. • No DOCTYPE allowed. ►Use a profiling stylesheet. • xrefs won’t resolve. ► ►Select conditions at runtime: Use Xinclude instead. • Modules can be valid documents. profile.os="linux" • Use olink to link between them. 17 August 2005 Single-source Publishing with DocBook XSL 23 17 August 2005 Single-source Publishing with DocBook XSL 24 Copyright 2005 Bob Stayton 4 Sagehill Enterprises Cross referencing Olinking ►Author or generate hotlink text. ►Create olink database from documents. ►Define cross reference “styles”. ►XSL processor reads the database. ►Link within or between documents ►Can generate link text. ►Between documents: ►Can link to base URI per document. • Within a concurrent set. ►Creates dependencies between docs. • Reference to previously published doc. • Reference to remote content. 17 August 2005 Single-source Publishing with DocBook XSL 25 17 August 2005 Single-source Publishing with DocBook XSL 26 Localization Installing XSLT processor ►Unicode and other encodings ►xsltproc ►Generated text in 46 languages • Download libxml2 and libxslt C source. ►Index collation • Install prebuilt packages. • Windows binaries available. ►Mixed language documents ►Saxon and Xalan • Need Java runtime environment. • Download and add to CLASSPATH. 17 August 2005 Single-source Publishing with DocBook XSL 27 17 August 2005 Single-source Publishing with DocBook XSL 28 Using xsltproc Generating PDF with FOP ►HTML output: ►Convert a .fo file on Unix or Linux: xsltproc \ fop.sh -fo myfile.fo -pdf myfile.pdf --output myfile.html \ /usr/share/docbook/html/docbook.xsl \ ►Convert a .fo file on Windows: myfile.xml fop.bat -fo myfile.fo -pdf myfile.pdf ►FO output: xsltproc \ --output myfile.fo \ /usr/share/docbook/fo/docbook.xsl \ myfile.xml 17 August 2005 Single-source Publishing with DocBook XSL 29 17 August 2005 Single-source Publishing with DocBook XSL 30 Copyright 2005 Bob Stayton 5 Sagehill Enterprises Customization needed Customizable stylesheets ►Default style is neutral. ►Modular design. ►Functional but boring. ►Templates for each element. ►Corporate identity requirements. ►Small reusable templates. ►Enhanced functionality: ►Empty, user-defined templates. • Better navigation. ►Parameterized (~460 parameters) • Readability. 17 August 2005 Single-source Publishing with DocBook XSL 31 17 August 2005 Single-source Publishing with DocBook XSL 32 Stock DocBook Stock DocBook Customized Customization methods overview Customization strategy ►Setting parameters ►Methods are a tool kit. ►Customization layer ►Easiest to hardest. ►Attribute sets ►Use stylesheet documentation. ►CSS for HTML ►DocBook XSL: The Complete Guide ►Generated text • Free online: http://www.sagehill.net/docbookxsl/ ►Generating titlepage templates ►Good XSLT and XSL-FO book(s) ►Placeholder templates ►DocBook mailing lists ►Customizing templates 17 August 2005 Single-source Publishing with DocBook XSL 35 17 August 2005 Single-source Publishing with DocBook XSL 36 Copyright 2005 Bob Stayton 6 Sagehill Enterprises Stylesheet parameters Parameter example ►What is it: ►In HTML output: • Named variable in stylesheet. • Add icon graphics for Note, Warning, etc. • Default behavior used otherwise. • Collectively known as “admonitions”. ►When to use it: • Parameter name is admon.graphics • If the right parameter exists. • Read the stylesheet doc: http://docbook.sourceforge.net/release/xsl/current/doc/html/ 17 August 2005 Single-source Publishing with DocBook XSL 37 17 August 2005 Single-source Publishing with DocBook XSL 38 Parameter: how to use it Setting multiple parameters ►Each processor has its own command ►Command line good for one-off. syntax: ►Some parameters used consistently. ►Many parameters = long command line xsltproc --output myfile.html \ --stringparam admon.graphics 1 \ ►Print page size, margins, etc. html/docbook.xsl myfile.xml ► Before ► After 17 August 2005 Single-source Publishing with DocBook XSL 39 17 August 2005 Single-source Publishing with DocBook XSL 40 Customization layer Customization layer contains ... ►New stylesheet that combines: ►Standard XSL syntax. • Imports DocBook XSL templates ►Pull in stock DocBook with: • Adds your customizations. <xsl:import href="path/to/docbook.xsl"/> ►Kept separate, so updates are easy. ►Parameter settings. ►Used in place of DocBook stylesheet. ►Replacement templates. ►New generated text. 17 August 2005 Single-source Publishing with DocBook XSL 41 17 August 2005 Single-source Publishing with DocBook XSL 42 Copyright 2005 Bob Stayton 7 Sagehill Enterprises Customization example Many print parameters <?xml version='1.0'> <?xml version='1.0'> <xsl:stylesheet version="1.0" <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> xmlns:xsl="http://www.w3.org/1999/XSL/ <xsl:import href="fo/docbook.xsl"/> Transform" version="1.0"> <xsl:param name="page.height">9in</xsl:param> <xsl:param name="page.width">7in</xsl:param> <xsl:import href="html/docbook.xsl"/> <xsl:param name="double.sided">1</xsl:param> <xsl:param

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us