OHSU Library’s Homegrown Knowledgebase
Laura Zeigen, Library Web Manager
Friday Valentine, Digital Resources Librarian and Cataloger
What is a knowledgebase? knowledgebase: a searchable database of
frequently asked questions and answers. Like an FAQ but different. An FAQ is just a file, but a knowledgebase
is a database that is searchable.
History of resource Library personnel of all levels staff the Reference
Desk. Need all the tidbits of knowledge one might need
at the Reference Desk in one central resource. 1991/2 - "Book of Wisdom”
Reference librarian wrote up and printed out these “pieces of wisdom” and kept notebook at the Reference Desk.
History of resource 1997
First attempt to bring “Book of Wisdom” online. FileMakerPro database
2003 FileMaker Pro database under-utilized A researcher conducted user-needs assessment
talking with all of the Reference Desk staff and obtained input on what they would desire of such a resource.
Needs assessment findings 2004: Cross-departmental team took this
user needs assessment and created a Knowledgebase using Microsoft SQL and Macromedia ColdFusion.
Development team User needs assessment person Reference person Database developer Web person Cataloger
Additional systems requirements Not duplicate the main library web site Provide browse and search capabilities Have a clear and concise interface Have print capability Be cheap and easy, preferably free
software solution
Additional systems requirements Content owners responsible for currency of
information Mechanism for anyone to request updates,
but content owners maintain control. Allow us to have an audit trail of items
Exploring the possibilities Third-party software
Partnership possibilities with OHSU’s IT Department
ActiveKB, myKB and others Blogs
None met the desired criteria of cheap/free, ability to have immediate control, or audit trail.
Solution best suited to our needs Develop a database-driven Web resource
Macromedia ColdFusion (front-end) Microsoft SQL (back-end)
Already available to university: free Development team already familiar with
technology
Basics of what we developed Browse Search Reporting mechanism
Updates for existing records Additions for records that were not already in
the system
Order & organizing content
Weed database of out-dated content Compile list of categories Create subject category structure Address other search issues
Searching and the Impact of ColdFusion/SQL
Searching different from perceived expectations (Google) Literal string searching No Boolean search capability
String searching #1 Words & parts of words, example:
“neuro” will return neurotic, neurology, neurocytology
“ovid” hits on ovid and provide
String searching #2 Hyphen/spacing important, example:
“non-ohsu” is one string
“non ohsu” is two strings.
Phrase searching is adjacency search
String searching #3 No Boolean searching makes combining
concepts difficult, example:
“public” + “ovid” (Google)
String search would see “public ovid” as two word search string.
Notes on searching Created detailed searching notes for users Created "controlled vocabulary" list for
both searchers and content creators to minimize the impact of the platform's sensitivity.
Staff training Staff training sessions to help familiarize
staff with the Knowledgebase, how to work with it and its controlled vocabulary, etc.
Feedback provided from training sessions helped in making final adjustments to the interface and system.
ColdFusion and SQL coding Screenshots Coding examples
Just the basics here More in-depth handout can be emailed to
you. Will just show basics of SQL back-end and
ColdFusion front-end.
Issues of coding for lists “by category” Each record entered into system had to be
assigned to at least one category to show up.
Example: Where is the WebBridge link in PubMed?
Coded for both WebBridge and PubMed categories.
The Fix Start with a solid database structure first. Fix resided in the ColdFusion query
The SQL database design was set up correctly.
majorcat.cfm page (category listings)
<h2>List of knowledgebase issues by category</h2>
<cfoutput query="fred" group="catName”>
<h3>#catName#</h3> <dl><dt> <cfoutput> <dd><li><a href="majorcatdetailfromcat.cfm?
token=#kbaseID#">#question#</a>
majorcatdetailfromcat.cfm Already passing through token from majorcat.cfm
URL:<cfquery datasource="LibSupport" name="fred">select DISTINCT *from kbase K INNER JOIN kbasecats BON K.kbaseID=B.kbaseID INNER JOIN cat CON B.catID=C.catIDwhere K.kbaseID = '#token#' order by question</cfquery>
majorcatdetailfromcat.cfm<cfoutput query="fred" group="question">
<strong>
<font color="##cc0000" size="4"">#question#</font></strong><p>
#answer#
etc.
Conclusions/Lessons Learned Get input from users on their needs regarding the
proposed resource. Use templates (ColdFusion) for your coding. Provide a mechanism to provide feedback on the
resource so it can be updated and grow over time. This also helps all staff feel more like stakeholders in
the project.
Questions? Presentation
http://www.ohsu.edu/library/staff/ zeigenl/onlinenw05/