Citation Style Language and GUIs

As I’ve been working on a citation style schema for use with my XSLT stylesheets, I’ve had a few primary goals. Among them, it should be:

  1. much easier to use than other citation style languages like bibtex’s .bst files
  2. able to support the most demanding of citation needs
  3. designed in such a way that a simple GUI could be built around it

With respect to the third goal, I strongly believe the success of much of I’m what I’m involved in will be based on a really good citation style language, and an easy-to-use web repository that makes it easy to access, create, and edit such style files.

To test my design a bit, I put together a simple mockup that shows how the style language might work in the context of a GUI. This is not a complete interface, and is completely non-functional; it just shows what I am envisioning an interface might look like.

In terms of the logic on which the interface is based, I split reference “types” into “class” and “type.” Within each (abstract) class, I require a definition. Therefore, for any given style, one must create definitions for the following types: article, chapter, and book. There are then extensible lists that allow one to have a definition that optionally can inherit from the required types within the class.

For example, say I have a style that for some bizarre reason (yes, citation styles are often bizarre) requires magazine articles to be formatted slightly differently than generic articles. I can then create a definition for “article-magazine”, inherit from the base-type within the class (article), and only indicate the specific piece that needs to be changed.

One issue I struggled with was internationalization. I decided to have a root-level xml:lang attribute, and to simply assume all styles are language-specific. This may mean large numbers of instances for a given style, but that seems a better approach that to introduce additional complexity to the spec. On the other hand, I have changed the structure a bit to allow me to internationalize within the individual styles if need be. Any opinions?

Comments are closed.


Creative Commons License Creative Commons License