<!DOCTYPE Book PUBLIC "-//OASIS//DTD DocBook V3.1//EN">
<book>
  <bookinfo>
    <author>
      <firstname>Markus</firstname>
      <surname>Hoenicka</surname>
      <affiliation>
	<address format="linespecific">hoenicka_markus@compuserve.com</address>
      </affiliation>
    </author>
    <title>dbslide - DocBook presentations in a web browser</title>
  </bookinfo>
  <chapter>
    <title>Objective</title>
    <para>Computer-based presentations gain popularity in meetings and fairs. A certain product from a Redmont, WA based company has a huge marketshare, which is not good for these reasons:</para>
    <itemizedlist>
      <listitem>
	<para>The said product is neither free nor Free</para>
      </listitem>
      <listitem>
	<para>The said product is not portable to other platforms but M$ Windows</para>
      </listitem>
    </itemizedlist>
    <para>dbslide offers a simple alternative, which may be sufficient for many but the most sophisticated presentations.</para>
  </chapter>
  <chapter>
    <title>Key features of dbslide</title>
    <simplesect>
      <title>Features</title>
      <itemizedlist>
	<listitem>
	  <para>dbslide is a SGML application using the DocBook DTD</para>
	</listitem>
	<listitem>
	  <para>dbslide is implemented as driver files for Norman Walsh's modular DocBook stylesheets plus some helper files</para>
	</listitem>
	<listitem>
	  <para>The appearance can be customized in all output formats</para>
	</listitem>
      </itemizedlist>
    </simplesect>
    <simplesect>
      <title>Applications</title>
      <itemizedlist>
	<listitem>
	  <para>Computer presentations</para>
	</listitem>
	<listitem>
	  <para>Overhead presentations</para>
	</listitem>
	<listitem>
	  <para>Slide presentations</para>
	</listitem>
      </itemizedlist>
    </simplesect>
  </chapter>
  <chapter>
    <title>Components of dbslide</title>
    <variablelist>
      <varlistentry>
	<term><filename moreinfo="none">dbslide.dsl</filename></term>
	<listitem>
	  <para>A driver file for the HTML output of the modular DocBook stylesheets. It implements experimental JavaScript/JScript code to assist the keyboard- and mouse-based navigation in the presentation.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><filename>dbslideovh.dsl</filename></term>
	<listitem>
	  <para>A driver file for the print output of the modular DocBook stylesheets. It implements large fonts for the output of conventional overhead sheets.</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><filename moreinfo="none">dbslidehdout.dsl</filename></term>
	<listitem>
	  <para>A driver file for the print output. Used for the handouts and the speaker's copy</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><filename>fixdbslide</filename></term>
	<listitem>
	  <para>A helper shell script to fix the JavaScript/JScript code generated by (Open)Jade</para>
	</listitem>
      </varlistentry>
      <varlistentry>
	<term><filename>dbslide.css</filename></term>
	<listitem>
	  <para>A cascading stylesheet which implements large fonts for projection purposes.</para>
	</listitem>
      </varlistentry>
    </variablelist>
  </chapter>
  <chapter>
    <title>Output formats</title>
    <para>dbslide uses three DSSSL stylesheets to generate the different output formats from the SGML source.</para>
    <informaltable>
      <tgroup cols="2">
	<thead>
	  <row>
	    <entry>output</entry>
	    <entry>stylesheet</entry>
	  </row>
	</thead>
	<tbody>
	  <row>
	    <entry>screen presentation</entry>
	    <entry>dbslide.dsl</entry>
	  </row>
	  <row>
	    <entry>overheads/slides</entry>
	    <entry>dbslideovh.dsl</entry>
	  </row>
	  <row>
	    <entry>handout</entry>
	    <entry>dbslidehdout.dsl</entry>
	  </row>
	  <row>
	    <entry>speaker's copy</entry>
	    <entry>dbslidehdout.dsl</entry>
	  </row>
	</tbody>
      </tgroup>
    </informaltable>
  </chapter>
  <chapter>
    <title>The dbslide screen presentation I</title>
    <simplesect>
      <title>Keyboard</title>
      <para>Compatibility: MSIE, Netscape (not Unix)</para>
      <variablelist>
	<varlistentry>
	  <term><keycap>Return</keycap>, <keycap>space</keycap>, <keycap>n</keycap> (as in <emphasis>n</emphasis>ext)</term>
	  <listitem>
	    <para>Moves on to the next slide</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><keycap>Backspace</keycap> (only Netscape), <keycap>p</keycap> (as in <emphasis>previous</emphasis>), <keycap>b</keycap> (as in <emphasis>b</emphasis>ack)</term>
	  <listitem>
	    <para>Moves back to the previous slide</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term><keycap>h</keycap> (as in <emphasis>h</emphasis>ome)</term>
	  <listitem>
	    <para>Goes back to the start page.</para>
	  </listitem>
	</varlistentry>
      </variablelist>
    </simplesect>
  </chapter>
  <chapter>
    <title>The dbslide screen presentation II</title>
    <simplesect>
      <title>Mouse</title>
      <para>Compatibility: MSIE, Netscape</para>
      <variablelist>
	<varlistentry>
	  <term>Left click >= 200 pixel from the left margin</term>
	  <listitem>
	    <para>Moves on to the next slide</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term>Left click < 200 pixel from the left margin</term>
	  <listitem>
	    <para>Moves back to the previous slide</para>
	  </listitem>
	</varlistentry>
	<varlistentry>
	  <term>Left click and Alt key</term>
	  <listitem>
	    <para>Goes back to the start page</para>
	  </listitem>
	</varlistentry>
      </variablelist>
    </simplesect>
  </chapter>
  <chapter>
    <title>Why does dbslide use DocBook?</title>
    <orderedlist inheritnum="ignore" continuation="restarts">
      <listitem>
	<para>DocBook is an acknowledged industry standard for technical documentations.</para>
      </listitem>
      <listitem>
	<para>DocBook is platform-independent. Therefore</para>
	<itemizedlist>
	  <listitem>
	    <para>Create the presentation with any text editor</para>
	  </listitem>
	  <listitem>
	    <para>Show the presentation on any platform with a browser</para>
	  </listitem>
	  <listitem>
	    <para>Make hotfixes to your presentation minutes before you start - on any platform, with any editor</para>
	  </listitem>
	</itemizedlist>
      </listitem>
      <listitem>
	<para>Use all those nifty SGML tricks to process your document:</para>
	<itemizedlist>
	  <listitem>
	    <para>Use the dbslide stylesheets for the presentation and for slides/overheads</para>
	  </listitem>
	  <listitem>
	    <para>Use the DocBook print stylesheets for the handouts</para>
	  </listitem>
	  <listitem>
	    <para>Use marked sections for the presenters comments</para>
	  </listitem>
	</itemizedlist>
      </listitem>
    </orderedlist>
  </chapter>
  <chapter>
    <title>Limitations</title>
    <para>dbslide is a quick hack, so it has its very own limitations:</para>
    <itemizedlist>
      <listitem>
	<para>The CSS is not fully implemented, so many elements are displayed using default settings.</para>
      </listitem>
      <listitem>
	<para>The DSSSL files are kludgy, e.g. they lack simple user-customization.</para>
      </listitem>
    </itemizedlist>
    <para>dbslide presentations are also limited by browser capabilities:</para>
    <itemizedlist>
      <listitem>
	<para>JavaScript navigation is somewhat unreliable on Netscape ("press and pray")</para>
      </listitem>
      <listitem>
	<para>JavaScript keyboard navigation fails in Netscape on Unix</para>
      </listitem>
    </itemizedlist>
  </chapter>
  <chapter>
    <title>Document processing</title>
    <simplesect>
      <title>Unix/Linux</title>
      <itemizedlist>
	<listitem>
	  <para>Get or compile <ulink url="http://www.jclark.com/jade">Jade</ulink>/<ulink url="http://sourceforge.net/projects/openjade/">OpenJade</ulink></para>
	</listitem>
	<listitem>
	  <para>Use <ulink url="http://www.gnu.org">Emacs</ulink> and <ulink url="ftp://ftp.lysator.liu.se/pub/sgml/psgml-1.2.1.tar.gz">PSGML</ulink> to edit the documents</para>
	</listitem>
      </itemizedlist>
    </simplesect>
    <simplesect>
      <title>Win32</title>
      <para>A complete suite of free SGML tools for Win32 is described at <ulink url="http://ourworld.compuserve.com/homepages/hoenicka_markus/ntsgml.html">SGML for Windows NT</ulink></para>
      <graphic fileref="sgml" srccredit="Markus Hoenicka 1998"></graphic>
    </simplesect>
  </chapter>
  <chapter>
    <title>Summary</title>
    <itemizedlist>
      <listitem>
	<para>dbslide is a package to create computer presentations or slides/overheads</para>
      </listitem>
      <listitem>
	<para>dbslide is based on DocBook</para>
      </listitem>
      <listitem>
	<para>dbslide is fully customizable</para>
      </listitem>
      <listitem>
	<para>dbslide presentations can be written and run on any platform with a text editor and a web browser</para>
      </listitem>
      <listitem>
	<para>dbslide is free (as in free beer and in Free speech)</para>
      </listitem>
    </itemizedlist>
  </chapter>
</book>

