Bibliographic/OOoBib Functional Requirements

From Apache OpenOffice Wiki
Jump to: navigation, search

Note this page documents the user functional requirements for the enhanced bibliographic module. That is, we focus on what the user needs, rather than on technical issues.

We also have a separate page devoted to the Enhancements needed in Writer to support an improved Bibliographic module

Please Contribute

You are invited to add to and improve this document. Editorial control will by David Wilson and Bruce D'Arcus.

Requirements List


Note: these requirements are reflected in the design of the new citation coding.

  • individual citations must allow more than one reference
  • citation references must be able to include additional information such as page numbers and captions
  • citation references must be linked to metadata objects, and be separate from their formatted representation (separation of semantic structure from presentation)


  • must be dynamic:
  • as new citations are added, the formatted citations and references are regenerated
  • changing styles should not require user editing
  • must support common features such as:
    • distinction between first/subsequent citation formatting
    • other conditional exceptions such as ibid., et al, etc.
    • in-text, footnote and endnote style citations.

Sorting Name and Subjects

The sorting of Names and Subjects is a complex area. There are two process involved:

  • pre-sorting processing to modify the name and subjects to conform to various sorting rules. discussion
  • the alphabetic sorting which depends on language and character set used.

Data Model

  • the model shall be relational
  • primary entities shall be reference items, collections, events, and agents/contributors


Should ONE Table store all references?

A more detailed description of the DB structure (and of this issue) is available on the following page:

References are of different types and are often formatted differently, depending on wether they are:

  • Articles
    • article from a cited journal (this is the standard)
    • article from a non-cited journal: need to provide the URL or some other availability data, too
  • Books:
    • book: Editor
    • chapter from a book: Author and Title of Chapter, in addition to Editor of Book and other pertinent data
  • Conference Proceedings/ Abstracts: Place and Date of Conference (Date might be a date range, e.g. 10-14 September 2006)
  • some other reports: organization, availability
  • site on the Internet: need URL, Date (accessed on date)
  • abstract from a proceeding/ conference: need Conference Data, too (Town, Date)
  • maybe other posiibilities

Therefore, one table is not suitable for all these entries. I do NOT prefer having a table with all the entries needed to cover those possibilities, as most would remain unused. I believe, it is wiser to have different DB tables for any of those reference-types and have the tables optimized for its specific reference type.


  • OOo shall expose a standard API for remote and third-party access, based on ZOOM (use Index Data's code here; we need to talk to the ID guys about this)
  • Bibliographic API proposals.


  • support import/export of standard formats (RIS, Refer/Endnote, BibTeX, MODS)


  • provide a citation insertion and management GUI suitable for use with both local and remote databases
  • provide a reference management GUI for use with enhanced data model, which includes:
    • auto-completion of contributors and related items (periodicals, etc.)
  • provide simple and easy to use GUI data entry panels for common reference types, such as books journal and articles.
  • provide 'advanced' GUI data entry panels to provide full access to all the relationships supported by the data model.

Better Keyword and Document Management

See page devoted to Keywords and Document Management

Personal tools