Fixing Broken Stuff
-------------------
* Use glib to handle as much of the portability layer as possible.
* Write tool for validating one or more OMF files, and man page for it.
* Fix bugs in the bug system: 
    https://sourceforge.net/tracker/?group_id=11543&atid=111543
* If somebody does a scrollkeeper-install of a document which is already
  installed, it installs a second copy.  It should really uninstall it and then
  do the install.
* If the identifier url is incorrect, the document is added to
  scrollkeeper_docs even though the document does not exist.
* ScrollKeeper should check that a given DTD is installed before trying to
  apply a stylesheet to it, or it will fail.  When this is done, we can
  consider taking the explicit requirement out of configure.in.
* Index extraction seems to be broken for indexterms which don't have the
  'zone' attribute.  This is actually b/c there is no anchor to target.
  Having the pre-processor will fix this.
* Fix bug where a bad XML doc (eg. one with 2 legalnotice sections) will
  cause an RPM upgrade to spew an error to STDOUT.
* Make sure omf.make passes 'make distcheck' and make sure it is in sync
  with GNOME's make distcheck
* Resolve en_US vs. C issue
* Fix configure.in to remove deprecated features (including removing
  acconfig.h).
* Update the web page (http://scrollkeeper.sourceforge.net)!!
* Add a flag so that the installation process doesn't try to write an
  installation log.

Adding/Enriching Features
-------------------------
* Add optional <shorttitle> attribute to OMF
* Resolve issues in sk-devel thread "Translated TOC list"
* Add feature which allows promotion of documents from an obsolete category
  to a specified non-obsolete category.
* Consider making category an optional attribute.
* Add appropriate flags to various commands to allow for easy use by non-root
  users.  This means each command must accept a flag for the database path,
  and possibly for a log file and other files.
* Add --help flags to each script/binary and update man pages
* Try to capture any errors which libxml2 dumps and send them to the log file
  instead of STDOUT
* Write DTDs for the ScrollKeeper XML data files
* Make sure omf.make and xmldocs.make are in-sync b/tw gdp-example2 and
  sk-example2... Jacob updated gdp-example2
* Write a script which finds all sectioning (and maybe some others?) tags
  and inserts id's if they are missing. eg: "scrollkeeper-addids <infile>
  <outfile>".  It just runs xsltproc with a stylesheet that adds a generic
  and reproducable idref. Sections are given ids "genericsectionid######",
  indexing tags are id'd "genericindexid#####". We need this as a pre-processor
  b/c DocBook doesn't require id's for most things, but ScrollKeeper/help browsers
  need them in order to link from the table of contents to particular sections or
  for the index to link to the terms they list.
* See if there is a more graceful way to handle docs where the OMF file
  mis-declares their mime type. Right now, it causes a nasty spew to the screen.
* Generally, we still need to improve our error logging and general info
  logging a lot.  For example, it currently sends a log entry when it tries
  to install or uninstall something.  However, it doesn't distinguish between
  successful and failed attempts.
* Put back the SGML index extraction and TOC extraction, doing proper checking
  for failure of sgml2xml.  It should not try to do the extractions if sgml2xml
  returns errors.
* Write man pages for all binaries?
* Write a nice script or program to parse the category list and output it for
  the user.
* Replace DocBook/SGML support using libxml2's DocBook/SGML support stuff and
  better error checking.
* Have scrollkeeper-update be smart that if you pass it an OMF path which doesn't
  exist, it realizes that you probably just removed the directory and that you
  want to unregister any OMF files which were previously in that path.
* Have the log file path follow the variable state directory, so that the log
  file is put under the build root when making RPMs.
* Consider having ScrollKeeper validate documents before trying to process them
  (DV seems to oppose this idea.)
* Review GNOME bug 73497 which is about ScrollKeeper.
* Review performance issues and, for a future release, add feature for 
  pre-compiling metadata at build time.

Documentation
-------------
* Put info on l10n into OMF doc
* Make list of changes in 0.3/0.4 and new features in 0.5/0.6
* Update/finish 0.4 specifications.  Get features/changes from email
  and add that categories for the next SK-OMF DTD should break up the
  category into proper XML form (possibly)
* Write a document about anything with DocBook/XML or DocBook/SGML that
  ScrollKeeper is picky about.  For example, ScrollKeeper currently requires that
  a section have an id to be included in the TOC (since it needs an anchor to
  link to).
* Write a FAQ. (1) Q: How does one find out if a specific document is installed, and where? A: Use the contents list and look for <seriesid> to match that of the document of interest.

Testing
-------
* Go forth and test, especially in with various documents (SGML and XML) 
  and with various locales.
* Make sure that docs with invalid categories are placed into the most 
  appropriate "Other" section.
* Make sure that docs in categories which are not translated go into "Other"
  section.
* Make sure that documents with missing document id's all get treated as 
  unique documents.
* Test locale fallback for documents

ScrollKeeper 0.5.x/0.6.x Features/Changes
-----------------------------------------
* URI resolution
* DTD improvements
* Conversion of OMF files between DTDs

