A public library wants to be responsive to its patrons. Because the library has a limited budget, the staff wants to ensure they purchase items that will add value to the library's collection and meet the needs of patrons. The library uses an automated catalog system that stores patron identities in an LDAP directory. Each patron has a library card with a unique barcode and a secret PIN. Whenever a patron uses a self-checkout kiosk or accesses their account information via the web, authentication of the patron is accomplished by performing an LDAP bind using the barcode number and PIN pair.
To allow patrons to participate in purchasing decisions, the library wants to implement a system that will leverage their existing identity infrastructure (namely, their LDAP directory) to provide a “wish list” service. This service will allow patrons to create personal wish lists of books, videos, compact discs, DVDs, audio tapes, maps, and various other item types. To eliminate ambiguity, the librarians want to make sure that the items purchased are of the correct format (paperback, hard cover, VHS, DVD, CD, etc.), edition (standard, large type, Braille, extended play, etc.), author/director/producer (many books and movies share the same or similar titles even though they are totally unrelated), publication year/release date, and so forth. In addition, it is desirable for information in the wish lists to be directly transferable into the library's order processing system and, ultimately, into the catalog system.
As luck would have it, the Library of Congress (LOC) has the most extensive database of bibliographic data in the world. Better yet, it is accessible over the Internet via the Z39.50 protocol (http://www.loc.gov/z3950/gateway.html) and can be mapped directly into a standard XML format known as “Metadata Object Description Schema” (MODS). This is great news for the library because they can leverage open-source components being developed by the Higgins (http://www.eclipse.org/higgins) and Bandit (http://www.bandit-project.org) projects. Specifically, the library plans to implement a system that allows patrons to search the LOC bibliographic database and add items to their wish lists by storing MODS XML documents in an XFLAIM database. Both the LDAP server and XFLAIM database engine can be unified as context providers underlying the Higgins IDAS. This allows a seamless integration of the library's patron identities with each patron's set of MODS bibliographic data. The librarians can pose XPATH queries directly against the XFLAIM database to make purchasing decisions. The MODS data can be directly imported into the order processing system, and once the items arrive, can be transferred into the library's catalog.
FLAIM is well-suited to the meet the needs of identity- and directory-based applications. Although objects maintained by these systems are substantially similar to one another in structure, there is always a degree of uniqueness that requires flexibility in the data model. In contrast to databases that require all rows (or records) of a table to conform to a rigid structure, FLAIM supports the creation of arbitrarily structured objects. The creator of an arbitrarily structured object is not only allowed to determine the contents of attributes within the object but is allowed to determine the structure of the object as well, on a per-instance basis. This allows, for example, a directory application to store objects with varied structures and attributes in a single database. Additionally, this collection of unique objects can be queried and managed as a single, coherent set.
Contents |
© 2009 Novell, Inc. All Rights Reserved.