About Features Downloads Getting Started Documentation Events Support GitHub

Love VuFind®? Consider becoming a financial supporter. Your support helps build a better VuFind®!

Site Tools


Warning: This page has not been updated in over over a year and may be outdated or deprecated.
legacy:vufind_1.x_developer_manual:supporting_a_new_metadata_format

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
other_than_marc [2010/02/05 18:32] – Updated record driver notes to reflect code being in trunk. demiankatzlegacy:vufind_1.x_developer_manual:supporting_a_new_metadata_format [2015/12/14 16:52] – ↷ Links adapted because of a move operation demiankatz
Line 1: Line 1:
 ====== Support for New Record Formats ====== ====== Support for New Record Formats ======
  
-//Note: This is a new, experimental feature introduced in r2231 of the trunk.  If you are using VuFind 1.0RC2 or earlier, you do not have access to this functionality yet.//+//This page refers to VuFind 1.x; for documentation on newer versions, see the [[development:howtos:supporting_a_new_metadata_format|VuFind 2.x version of the page]].// 
 + 
 +//Note: This feature was introduced in VuFind 1.0.  If you are using VuFind 1.0RC2 or earlier, please upgrade to gain access to this functionality.//
  
 ===== Introduction ===== ===== Introduction =====
  
-VuFind is currently bundled with a standard indexer ([[http://code.google.com/p/solrmarc/|solrmarc]]) that handles MARC records quickly and efficently.  However, VuFind also has the capability to support any other form of metadata if you are willing to do at least one of two things:+VuFind is currently bundled with a standard indexer ([[indexing:solrmarc|SolrMarc]]) that handles MARC records quickly and efficently.  However, VuFind also has the capability to support any other form of metadata if you are willing to do at least one of two things:
   * write an indexer to get the data into VuFind's index (necessary!)   * write an indexer to get the data into VuFind's index (necessary!)
   * write a "Record Driver" to display that data appropriately within the VuFind interface (optional, if the index-based display meets your needs)   * write a "Record Driver" to display that data appropriately within the VuFind interface (optional, if the index-based display meets your needs)
Line 18: Line 20:
   * POST document to Solr's update handler (FYI: it doesn't have to be a POST per se; you can use SOLR/Lucene APIs to add documents directly to the index which is much faster)   * POST document to Solr's update handler (FYI: it doesn't have to be a POST per se; you can use SOLR/Lucene APIs to add documents directly to the index which is much faster)
  
-==== Record Display ====+Note that for any metadata format available as XML, you can save yourself some steps by using the [[:indexing:xml|XSLT tool]] provided with recent versions of VuFind. 
 + 
 +===== Record Display =====
  
 Record display is handled by a family of "Record Driver" classes that extract information from the stored Solr fields and return it through a standard interface.  The top-level parent Record Driver (found in web/RecordDrivers/IndexRecord.php) relies entirely on the Solr index fields, but children of this class (for example, web/RecordDrivers/MarcRecord.php) override and expand methods by using record-specific data extracted from the "fullrecord" field.  Whenever record information is needed by VuFind, a Record Driver is instantiated through the Record Driver Factory (web/RecordDrivers/Factory.php) -- the exact driver built is based on the "recordtype" field from Solr, and the default index-based Record Driver is used if no type-specific driver exists. Record display is handled by a family of "Record Driver" classes that extract information from the stored Solr fields and return it through a standard interface.  The top-level parent Record Driver (found in web/RecordDrivers/IndexRecord.php) relies entirely on the Solr index fields, but children of this class (for example, web/RecordDrivers/MarcRecord.php) override and expand methods by using record-specific data extracted from the "fullrecord" field.  Whenever record information is needed by VuFind, a Record Driver is instantiated through the Record Driver Factory (web/RecordDrivers/Factory.php) -- the exact driver built is based on the "recordtype" field from Solr, and the default index-based Record Driver is used if no type-specific driver exists.
legacy/vufind_1.x_developer_manual/supporting_a_new_metadata_format.txt · Last modified: 2018/12/19 14:02 by demiankatz