Drupal module with Feeds plugins for importing remote RDF and mapping it to nodes. Master branch is D7 and there is a separate branch for D6.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
plugins
INSTALL.markdown
LICENSE.txt
README.markdown
rdfimporter.classes.inc
rdfimporter.css
rdfimporter.info
rdfimporter.install
rdfimporter.module

README.markdown

RDFimporter module

RDFimporter is primarily a set of plugins for the Feeds module that can be used to import remote RDF resources and map their content to Drupal nodes. It can be used for both one-time imports and periodic data imports.

Most of the Drupal functionality comes from the Feeds module itself. All RDF fetching and parsing is handled by the ARC2 RDF framework. (Both great pieces of software)

This module is the result of work being done at Cornell University's Mann Library to bring content from Cornell's VIVO database into Drupal. Our hope is that other groups and institutions will be able use this module to bring VIVO content into their Drupal sites. We also hope this code will be useful to others as RDF becomes more available on the Web.

Goals

  • Make it easy for site builders, including non-developers, to import remote RDF content
  • Allow RDF to be mapped to standard Drupal structures (CCK, Taxonomy)
  • Provide a way to update nodes manually or automatically

Features

  • Support for Linked Data and SPARQL endpoints (via ARC2)
  • Allows users to define mappings between RDF properties and Drupal node properties
  • Requires very little knowledge about RDF and SPARQL
  • Automatically fetches human-readable labels for object properties
  • Automatically filters out content in languages different from the site (when language is explicitly set in RDF)
  • Provides hooks to 'preprocess' retrieved data and hooks to expose additional node properties

Requirements

  • Drupal 7.x
  • Feeds module + dependencies
  • ARC2 PHP library

NOTE: Some system settings for PHP and MySQL may also need to be changed. See the INSTALL.markdown file for more details.

Installation and usage

See "INSTALL.markdown" for an overview of how to configure and use the module.

Documentation

Links to further documentation and screencasts will be added here as they become available.

Status

This code is experimental and is not stable or reliable. For now, the issue queue on GitHub seems like the best place to post problems and bugs.

We would love some feedback on various use cases, how something like this might be used, and how it could be improved.

Contact Miles via GitHub or directly at mw542@cornell.edu

Some future plans

  • Allow single nodes to be updated/re-imported independently.
  • Make the mapping screen much easier to use, possibly by using JavaScript-based visual mapping.
  • Come up with a way to import RDFa. ARC2 can parse it already, but the structure can be a little funny.
  • Handle multi-valued fields.

Other modules

There are some great modules available that provide similar functionality, including SPARQL Views and Linked Data. One major difference is that RDFimporter can work without a SPARQL endpoint if RDF is available via Linked Data. However, compared to those modules, RDFimporter does things quite lazily. It requires far less familiarity with RDF or SPARQL, but this ultimately makes it inefficient in some cases. If the data you're after is available from a SPARQL endpoint and you can write SPARQL queries, you might be better off with something like SPARQL Views + Feeds View Parser.