PKP Bugzilla – Bug 1360
Configurable/custom metadata indexing
Last modified: 2012-06-06 15:09:25 PDT
For consideration in a future version of OJS. > As far as further developments (you had indicated in my column in the test > matrix you wanted some feedback), I would > love to see configurable metadata structures for each journal, similar to the > "Submission preparation checklist" in > step 3 of Journal Setup: flexible and local to each journal. This feature > would allow implementation of specialized > metadata for the separate journals in one installation of OJS, and would allow > editors fine control over what elements > are required. > > This functionality would allow OJS to be configured to be compatible with > Erudit's metadata (possibly a good thing in > Canada) and also whatever national/regional/disciplinary requirements are seen > as important elsewhere in the world, > thereby increasing OJS's impact internationally. > > A useful model for this type of configurability is the Internet Scout's CWIS > (open source, PHP/MySQL) collection > manager, available at http://scout.wisc.edu/Projects/CWIS/ . CWIS allows > administrators to add arbitrary fields of > various data types, make them optionally searchable and displayable in full > records, and map them to Unqualified > Dublin Core fields for OAI harvesting. I think analysis of CWIS's metadata > feature set would be a good start in adding > this capability to OJS.
Assigning to 2.3.5. This has been an oft-repeated request.
This is a perfect use case for the meta-data + filter framework (see the use case examples in the Filter class). The implementation would go like this: Create a filter that takes input from a meta-data description and produces data consumable by an index provider (e.g. our internal database implementation or Lucene). The filter can be configurable to only index certain meta-data fields, e.g. from the list of NLM or DC fields. Both meta-data schemas have already been implemented cross-app so that we could introduce that feature both, in OJS and OCS (or later also OMP).