Install

Works with Drupal: 7.x

Using dev releases is not recommended, except for testing.

Using Composer to manage Drupal site dependencies

Downloads

Download views_oai_pmh-7.x-2.x-dev.tar.gztar.gz 31.42 KB
MD5: f756572b2e2a16d769160e3e72facaa3
SHA-1: 9e4b2f844f27c0009bec04b4ccf009e57d2aa49c
SHA-256: 104e0022b4cb608a8f0e145f136ccab3a848ab09036fb7e2aad927766b239351
Download views_oai_pmh-7.x-2.x-dev.zipzip 43.73 KB
MD5: 37ed56f4228fabcc962db9c3ccd5d4d1
SHA-1: 6d8bc223ed3809ddd47cf29cd54456f325fcedc6
SHA-256: 4d7e3652a838c102c8eaa25995a071d53b482d3f3874cd94ea2788d40e0c65af

Release notes

This is a Drupal 7 port of the 6.x-2.x version of the module. Changes contributed by Austin Goudge at psycle dot com

Key Development Points

  • Multiple row styles available: Auto Fields, Dublin Core, ILOX, LOM, LRE.
  • Choosing the "Auto Fields" row style enables the same view to be used to output any of the available row styles. The row style that is output is determined by the metadataPrefix parameter to the OAI request.
  • Drupal's own XML generating function was insufficient for processing tiered XML output for the likes of LOM. In response, we created the views_oai_pmh_xml_node class to handle nested XML generation.
  • The metadata type definition array keys are able to represent tiered XML data by using the '/' character to separate XML tag names. The '@' character indicates that an attribute is required for the given element. E.g.:
    -- this array key: 'a/b/c@lang'
    -- will generate this XML: ''
  • XML attributes, such as language, are also defined in the metadata type definition array, using array keys formatted like this: '(attribute)oai_lom@language'.
  • Values can be assigned to XML attributes using the Drupal-field-to-OAI-element mapping in the view.
  • Support added for multiple-value Drupal fields for Views 2.
  • Backward-compatability with previous version of OAI-PMH Views module

Additional Development Notes

  • Only one display style available: OAI-PMH (auto).
  • Display style is represented by a PHP object: views_oai_pmh_plugin_style_auto.
  • views_oai_pmh_plugin_style_auto contains an array of "misc" style classes, which use the PHP object views_oai_pmh_plugin_style_misc. Each "misc" style class represents one of the available metadata types.
  • views_oai_pmh_plugin_style_auto passes calls to its methods down to one of its "misc" style classes to handle. Which one is chosen depends on the metadata type requested.
  • Row style is represented by a PHP object: views_oai_pmh_plugin_row_auto
  • views_oai_pmh_plugin_row_auto contains an array of "misc" row classes, which use the PHP object views_oai_pmh_plugin_row_misc. Each "misc" row class represents one of the available metadata types.
  • views_oai_pmh_plugin_row_auto passes calls to its methods down to one of its "misc" row classes to handle. Which one is chosen depends on the metadata type requested.
  • The row styles are all defined in the same location: includes/views_oai_pmh_metadata_type_definitions.inc
  • Each row style definition creates an object of type views_oai_pmh_metadata_type and adds it to a global array. Any part of the module code that requires metadata-specific information can look it up in the relevant globally-available object.
  • The property $elements in views_oai_pmh_metadata_type contains the array that defines a metadata type.

Sponsored by The Open University and implemented by PsycleInteractive

Created by: rjerome
Created on: 23 Apr 2013 at 00:44 UTC
Last updated: 2 Aug 2018 at 16:13 UTC
New features

Other releases