Skip to content


Subversion checkout URL

You can clone with
Download ZIP
This is an Omeka plugin for importing items from a Fedora Commons repository.
Failed to load latest commit information.
controllers Refactors the Jasmine fixture-generation pipeline.
forms Jasmine rig up and running, tests migrated.
helpers Changed the rendered API to return DOMDocuments.
importers Lowercases Renderers/ and Importers/.
libraries/FedoraConnector Changed the rendered API to return DOMDocuments.
models Style cleanup on models.
renderers Changed the rendered API to return DOMDocuments.
spec/javascripts Finishes general style refresh.
tests Fixed tests broken by CSRF tokens.
views/admin Updated payloads.
.gitignore .gitignores .grunt and spec runner.
FedoraConnectorPlugin.php Fix Exhibit error with deleted/non-public items
Gruntfile.js Don't package the phar file.
LICENSE Add deploying infrastructure. Added information about its ExhibitBuilder integration to the README.
bower.json Set version number to 2.1.5.
composer.json Adds PHPUnit / Grunt interactions.
composer.lock Adds PHPUnit / Grunt interactions.
package.json Set version number to 2.1.5.
paths.json Updates Jasmine / Jasmine-jQuery.
plugin.ini Set version number to 2.1.5.
plugin.php Gets rid of unused FEDORA_PLUGIN_VERSION global, refactors plugin.php.
routes.ini Refactors the Jasmine fixture-generation pipeline.

Fedora Connector

Dependency Status Build Status

FedoraConnector connects items in an Omeka collection with objects in Fedora Commons repositories. The plugin makes it possible to create one-to-one associations between Omeka items and Fedora objects and automatically populate the Dublin Core record for the item with values extracted from datastreams associated with the Fedora object.

The plugin also exposes a system of extensible "sub-plugins" that makes it possible to easily add custom importers and renderers to handle different datastream formats (basic Dublin Core, MODS, and image-type handlers come pre-installed).

All of this works together to allow you to include metadata and media from a Fedora store in your Omeka exhibits. It also seemlessly integrates with the ExhibitBuilder plugin to display media from Fedora on the exhibit pages.

Here's the basic workflow:

  • Add server records that point to Fedora Commons repositories: Different items in the same Omeka collection can pull from objects in different Fedora repositories.

  • Associate Omeka items with Fedora objects: Each item in the Omeka collection can be linked to one or more of the datastreams provided by a single Fedora object.

  • Populate item records with Fedora data: The plugin retrieves data from the Fedora datastreams and maps it onto the fields in the Dublin Core record for the item. For datastreams that do not deliver plain-text data than can be written directly into the Omeka elements, the plugin can also generate new markup to display content (like images) pulled directly from the repository.


Currently, FedoraConnector can only interact with Fedora servers that do not place authorization checks on remote requests to access object datastreams. Refer to the Fedora Commons documentation on installing, configuring, and running a digital repository.

Installing and Configuring

  1. Copy the FedoraConnector folder into the "plugins" folder of the root Omeka installation. (see Installing a Plugin)

  2. In the Omeka administrative interface, click on the "Settings" button at the top right of the screen, go to the "Plugins" tab, and click the "Install" button next to the listing for Fedora Connector.


Add Servers

Before you can associate items with Fedora objets, you have to enter information for at least one Fedora server. To add a server:

  1. Click the "Fedora Connector" tab in the main administrative menu bar.

  2. Enter a name for the server. This is a non-public value used for content management in the administrative interface.

  3. Enter the base URL for the server.

  4. Click the "Save" button.

If the fields are valid, you will be redirected to the "Browse Servers" page, where you should see a listing for the new server. If Fedora Connector succeeds in connecting to the server, the "Status" column will read "Online." If the status is listed as "Offline," something went wrong and the plugin is unable to pull information from the server. Check that the server is running and that the URL field is entered correctly.

To edit a server:

  1. Click on the "Edit" link under "Actions."

  2. Make edits to the form and click the "Save" button.

To delete a server:

  1. Click the "Delete" button under "Actions."

Connect Omeka items with Fedora objects

With a server (or multiple servers) created, you can link items in the Omeka collection with remote Fedora objects. Go to the "Edit Item" view by adding a new item or editing an existing item. click on the "Fedora" tab on the left vertical menu.

  1. Select a server in the "Server" dropdown.

  2. Enter the PID of the Fedora object that you want to link the item with. When you type or paste a PID into the field, the full list of datastreams provided by the object will appear in the "Datastreams" box. Change the server and PID at any point to get an updated list of datastreams.

  3. Select one or more datastreams. More than one datastream can be selected by holding down the Control (Windows) or Command (Mac) button.

  4. You can go ahead and save the item at this point and the current configuration of the Fedora options will be saved. If you selected datastreams that deliver non-text content of a format that can be accommodated by one of the classes in the /Renderers folder, the content will automatically appear at the bottom of the item show views.

For datastreams like Dublin Core and MODS that deliver plain-text elements that can be mapped onto Omeka Dublin Core elements, the plugin will copy over the Fedora values as new element texts on the local item record. Check the "Import now?" checkbox to execute this import process when the item form is adder or saved (when you click on the "Save Changes" button).

Once you've connected an Omeka item with a Fedora object, the connection can be edited at any point - just change the values in the Server, PID, and Datastreams inputs, and the plugin will immediately update to render the selected datastreams on the new object.

Note that plain-text datastreams like Dublin Core and MODS that create copies of the Fedora values in the Omeka item record won't be automatically updated if the Fedora object association is changed after the imported values are written to the database.

Something went wrong with that request. Please try again.