Using Drupal as a Client to External Content from a Fedora Item Repository.

Events happening in the community are now at Drupal community events on www.drupal.org.
sjbassett's picture

I am trying to build a simple web application to view items in a Fedora repository. I am aware of the Islandora project, but our team was not satisfied with it as a solution (I am not criticizing their hard-work!). I am looking to build an alternative module / feature / cookbook to contribute back to the Drupal community that would be helpful for other archival institutions who want to implement a Drupal solution for a digital archive / repository.

In short, I am trying to use the power of Drupal to create a web interface to view items deposited into a Fedora digital repository. The repository has a few php apis to get the items, metadata, and permissions. I am wondering what the best approach to solving this problem.

Possible Ideas

I have thought of two ways to approach this problem. Have Drupal regularly index the Solr / Fedora servers and create small entities using the Entity API for the Fedora objects or create a view that shows objects based on queries using the Views API. I would love some help getting ideas on what the best approach would be.

Comments

I don't know a lot about

krlucas's picture

I don't know a lot about Fedora personally (though a few of my colleagues at Isovera have more experience) but we have had good luck with the Sarnia module (http://drupal.org/project/sarnia) to connect Drupal directly to any (non-Drupal) Solr index and create Views to search and display the data. We're currently using it for an OPAC project.

Kelly

@krlucas Thank you. I will

sjbassett's picture

@krlucas Thank you. I will investigate this now and see if this is just what I need. I will report back if I have any success!

Steven Bassett

@bassettsj

Failed.. What about remote Entities?

sjbassett's picture

Thanks again for the suggestion! I worked for a few hours yesterday on trying to implement sarnia. I could be missing a step, but I was not able to configure the module. I logged an issue on the project page, but don't think the project is as actively maintained so I can't just sit and wait...

I have been looking instead into developing a small module, that hopefully will only depend on the Entity API for Drupal 7 that just extends the entity class in Drupal core.

I would need to create an entity type that represents the objects in the Fedora repository. Drupal 7 assumes that the entity will be stored in the database, so there is not much documentation unfortunately on remote entities. I recently found Remote entities in Drupal 7 writing about this particular challenge. I am thinking this might be the best approach, but I am not sure.

Alternatively, Views has an API that is poorly documented, but powerful. This could be an alternative method.

Does anyone have any thoughts?

Steven Bassett

@bassettsj

I would encourage you to

krlucas's picture

I would encourage you to stick with Sarnia/Search API as they are the best examples of implementing the very concept of "remote" entities in Drupal.

I responded to your issue in the Sarnia issue queue. You can try that patch or consider using Search API Solr RC2 until Sarnia catches up.

Kelly

Libraries

Group organizers

Group categories

Resources

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week