ePortfolio export and interoperability mini-project

Ruby code sample

Is anyone else thinking about how to support getting stuff out of D2L ePortfolio?

This may be a niche consideration but I’m wondering about how we support users who want to be able to get back anything which they’ve created or added to their ePortfolio but might not want to use MyDesire2Learn after graduation.

The current export options offer a D2L ePortfolio xml package of any and all content or an html site of a given presentation artifact.

The html site/ presentation is one way to get content out of an ePortfolio but I’m wondering if for some users that just gives them a fixed view of content. Last semester I had student worker who I could borrow spend a little time exploring either export option to transform them to a flat text file and folder of content. We had reasonable results but the code was in [working] beta when they graduated. The java code is now sitting on the shelf [edit: I should note that they did a great job and its shelved state is due to the shift in programmer and my resulting choice to explore Valance rather than further develop the java code – RJR].

This year I was able to secure a grant from the student technology fee fund to hire a student developer to work on this problem. Given the development of D2L’s valence api and its apparent extensive support for ePortfolio we’re looking into using that rather than the export options to provide a possibly smoother user experience for this.

The project has kicked off with helping the developer up to speed with ‘hackery’ and with using ‘api’s. I’m using ‘hackery’ to denote finding stuff other people have done and trying to adapt and fuse it together rather than coding from scratch or understanding how to write every line (follow every line – yes). Thankfully with a combination of code academy and Martin Hawksey’s excellent practice of blogging his development work they’ve had some success with Twitter’s api and are ready to move onto D2L’s valence api and talk with David Hietpas (a developer in UWO’s library who has been using valence to integrate a information literacy tool and game).

Anyone else thinking about this or developing a script or program around this?

I’m thinking that for export options it might be interesting to look into mapping to Google Sites if there’s an import option. I’m also wondering about a flat file manifest web page with LRMI embedded (and probably beyond current resourcing – LEAP2A or the like. Leap2A (http://www.leapspecs.org/2A/) seems to be one of the few specifications for ePortfolio interoperability and it seems to have some use but not aware of much use of it in North America. Has anyone using D2L explored this?

UKOER 2: Dissemination protocols in use and Jorum representation

What technical protocols are projects using to share their resource? and how are they planning on representing their resources in Jorum? This is a post in the UKOER 2 technical synthesis series.

[These posts should be regarded as drafts for comment until I remove this note]

Dissemination protocols

Dissemination protocols in use in the UKOER 2 programme

Dissemination protocols in use in the UKOER 2 programme

The chosen dissemination protocols are usually already built in the platforms in use by projects; adding or customising an RSS feed is possible but often intricate and adding an OAI-PMH feed is likely to require substantial technical development. DelOREs investigated existing OAI-PMH plugins for WordPress they could use but didn’t find anything usable within their project.

As will be discussed in more detail when considering Strand C – RSS is not only the most supported dissemination protocol, from the programme’s evidence, it is also the most used in building specialist discovery services for learning and teaching materials. The demand for an OAI-PMH interface for learning resources remains unknown. [debate!]

Jorum representation

Methods of uploading to Jorum chosen in UKOER 2 programme

Methods of uploading to Jorum chosen in UKOER 2 programme

  • The statistics on Jorum upload method are denoted expressions of intent – projects and Jorum are still working through these options.
  • Currently RSS upload to Jorum (along with all other forms of bulk upload) is set up to create a metadata record not deposit content.
  • Three of the uploaders using RSS are using the edshare/eprints platform (this platform was successfully configured to deposit metadata in bulk  via RSS into Jorum in UKOER phase 1).
  • Jorum uses RSS ingest as a one-time process – as I understand it it does not revisit the feed for changes or updates [TBC]
  • As far as I know PORSCHE are the only project who have an arranged OAI-PMH based harvest (experimental for Jorum upload under investigation as part of an independent project – [thanks to Nick Shepherd for the update on this HEFCE-funded work: see comments and more information is available on the ACErep blog)]

Overview paper: Technology and descriptive choices in UKOER

Technology and descriptive choices in the JISC and HEA Open Educational Resources programme.

A position paper for the ADL Learning Content Registries and Repositories Summit by R. John Robertson, Lorna Campbell, Phil Barker

Theme: ‘State of the practice in learning content repositories’ and ‘Systemic Initiatives’  License: CC: BY

JISC and the Higher Education Academy are collaborating on the Open Educational Resources Programme. The Higher Education Funding Council for England (HEFCE) has provided an initial £5.7 million of funding for 29 pilot projects, plus associated support activities, (April 2009 to March 2010) which will explore how to expand the open availability and use of free, high quality online educational resources. (http://www.jisc.ac.uk/oer).

CETIS (the Centre for Educational Technology and Interoperability Standards), a JISC innovation support centre, is providing strategic and technical support for UKOER at both programme and project level. Technical guidance and synthesis is disseminated primarily through the CETIS blogs which are aggregated onto the CETIS website (http://www.cetis.ac.uk/).

A different approach

Unlike many previous development programmes, UKOER has not specified a particular technical architecture or mandated a specific approach to metadata and resource description, beyond the requirement that a few key pieces of information are recorded in some way.

The required information is:

  • Programme tag
  • Title
  • Author / owner / contributor
  • Date
  • URL
  • Technical info – file format, name & size.

Some additional information has also been recommended:

  • Language
  • Subject classifications
  • Keywords
  • Tags
  • Comments
  • Descriptions


It is still too early to present a synthesis of how this information has been recorded but it is possible to provide an overview of the platforms, tools, metadata standards and packaging formats that projects have adopted.

Packaging formats in use

Packaging formats in use

Communication protocols in use

Communication protocols in use

Descriptive metadata standards

Descriptive metadata standards

Types of tools used to manage OERs

Types of tools used to manage OERs

Details of the types of tools in use in UKOER

Details of the types of tools in use in UKOER


  • projects may occur more than once in any given graph.
  • the graphs record the number of platforms that support a given format, protocol or standard (rather than use per se)
  • the recorded use of Zip is probably unrepresentative


  1. At this stage CETIS technical synthesis of UKOER is still very much a work in progress but some preliminary trends are emerging:
  2. Unsurprisingly projects have gravitated to technologies they are familiar with and already had in place.
  3. Projects have used a mixture of elearning platforms, repositories, and innovative approaches
  4. The standards used are often embedded in applications and their use is dependant on the application chosen.
  5. The feasibility of aggregating distributed heterogeneous resource descriptions is still unproven.
  6. The pilot programme points to ways forward to use both web2 applications and digital repositories and to exchange information between them.
  7. Projects have chosen multiple platforms to support different functions such as preservation, streaming and dissemination, marketing and advocacy.
  8. Projects’ technical choices primarily reflect resource management and distribution requirements – as opposed to course delivery requirements.

Questions for discussion

  1. How do these figures fit with your expectations of approaches to sharing learning content?
  2. Can the applications you are using interact with multiple different platforms and applications for different purposes?
  3. If relevant, can your content move between different types of platforms? Can your metadata?

A fuller version of this position paper will be presented at the OCWC Conference in May 2010.

The use of ADL SCORM in the UKOER programme

“The Sharable Content Object Reference Model (SCORM) integrates a set of related technical standards, specifications, and guidelines designed to meet SCORM’s high-level requirements—accessible, interoperable, durable, and reusable content and systems. SCORM content can be delivered to your learners via any SCORM-compliant Learning Management System (LMS) using the same version of SCORM.” (http://www.adlnet.gov/Technologies/scorm/default.aspx )

In the context of the OER programme SCORM has mostly been interacted with as  a profile of IMS CP (though it utilises and profiles other standards as well).

SCORM is supported by:

  • Unicycle
  • OCEP
  • BERLiN
  • mmtv (under consideration)
  • Evolution
  • OLE Dutch History

comparing this to the list of those using IMS CP (link); those using SCORM and not using Content Packaging are:

  • OCEP
  • BERLiN
  • Evolution
  • mmtv

Support for SCORM is an out of the box function for

  • OCEP
  • BERLiN
  • Unicycle
  • Evolution

it may also be for the Moodle users (I’m not sure):

  • OLE Dutch HIstory

I’m not (yet) sure if mmtv decided to pursue the creation of SCORM packages, and am not clear, at this stage, if anyone is actively using SCORM or if projects are only supporting it.