Bookcase is a very versatile and customizable xml based collection manager. With bookcase a user is able to manage all kinds of catalogues like coin collections, cd collections or books. Here, bookcase is used to manage my books, presentations and papers at work.
In this section some information about additional functionality added to bookcase to suite my needs is given. These extensions are available for download.
The option to define your own fields and categories make this tool very flexible. The zipped xml file used for storage is an advantage if you don’t or can’t run a database server or use the same data on two different machines.
But – and there always is a but, isn’t it 🙂 – in my case I wanted to catalogue a huge amount of scientific papers and books. To make this task easier I developed the following widgets for bookcase.
You may see them in bookcase 0.9… may be not. Robby’s decision!
The selection widget is a simple widget I use for keyword mamangment. On the left side a listbox shows all the keywords already defined; on the right side the keywords selecte for this entry are shown. If you want to add further (new) keywords this can be done with the textedit field at the bottom of the widget.
The following patches are available:
Please, also read the patch info about how the patches should be applied
The collection of scientific papers and books I have here is stored in different ring binders based on the topics of the documents. An individual signature is assigned to each document.
For bookcase I added an AutoEnumeration widget that assigns a unique id for each document based on the category the document is classified under. The signatures consist of groups denoting the category separated by dots and end with a number. The categories are not allowed to be a number. E. g. if you have books with the ids :
mz.engr.1 mz.engr.2 mz.ism.1
and you enter mz. the AutoEnumeration widget will give you the following options:
You can either store the book with a signature mz.1 or otherwise store the book in the categories mz.engr. or mz.ism. Validation is done dynamically to guarantee that no invalid signatures are entered.