Case Studies‎ > ‎


Phosphorix were the first “commercial” company to explore the actual use of XCRI in 2005, since then we have continued to explore each iteration and release. At this point in time (June 2008) we are doing more research and development of XCRI use cases than ever.

In summary we discuss;

  • The history of Phosphorix and XCRI
  • The overall problem
  • The proposed solution
  • Involvement with JISC projects
  • What we have found
  • The processes to consider
  • A vision for the future

Phosphorix attended the CETIS Enterprise SIG in Oxford April 2005, and joined a formative discussion (Project start up meeting) about the JISC funded XCRI reference model project. The project was led by Mark Stubbs, who with Vashti Zarach did a very good job of convincing us that the UK would benefit from a technical standard for XML based services to join up course information.

As specialists in joining up information systems, using XML and education based standards, Phosphorix did not need much convincing.

So we committed to contributing to the project as best we could.

As developers for the JISC funded Learning Matrix project, Phosphorix had already planned an extended ioNode system. This hub spoke metaphor was previously developed in the JISC SHELL project (it was used to exchange learner information between institutions in the South West of England also using an XML standard). In the Learning Matrix we had been challenged to develop and implement software based use cases to exchange learner and course information between a consortium of colleges and universities in and around Liverpool.

We felt there was clear synergies between the XCRI study and the Learning Matrix regional pilot. An obvious overlap was course information services, in the Learning Matrix we planned to join up bite size course information from many providers and as such could realise a part of the vision for XCRI. The projects met and we had a green light to prototype the exchange of course information using xml.

Phosphorix use agile and iterative techniques when possible, it is important that the code we develop is easy to re-use, adapt, but most of all solve the problems of a client, or a clients client. While Phosphorix and the Learning Matrix developed practical process prototypes for exchanging course information (August and September and November 2005) the XCRI project, ahead of time released and iterated specifications and schemas (September and December 2005) for comment.

Phosphorix remember the strong open development model, which allowed all the community to contribute, this was largely led by Mark Stubbs blog, and email to active parties. As a result we felt there was an opportunity to do something fairly unique for an emerging XCRI, by way of a novel approach to data transformation. We also felt included in the standard and the problem solving.

A practical standards based problem was first noticed in the SHELL project. A number of other projects had tried to implement an education based XML standard to exchange learner records as XML. When the project tried to exchange data, interoperability tests largely succeeded, however failures did occur. We realised quickly that failures were down to the ambiguous schema field / element names. Perhaps terms which were open to a different interpretation in the UK caused the problem? In short, developers had mapped the same data to different fields and thus errors occurred.

Phosphorix proposed a solution which we called ioMorph. We designed a toolkit to development consistent "data transformation services" and we joined the JISC toolkits project at our own costs in order to work with the community to achieve the best open solution. Practically speaking the ioMorph solution was achieved in two ways;

  1. External data Applications / data streams may use a web service based transformation to output / input consistent mappings of a standard such as XCRI (via SOAP/WSDL or HTTP url /REST).
  2. Enterprise data applications may use a java api, which in turn used the same consistent mapped data transformation.

In addition we supplied a training session to demonstrate the ease of plugging into transformation services and a web site with sample code.

The original ioMorph was released license free and royalty free to education, it depended on some Apache 2 licensed jars, the website is

In recognition of the early work we did in promoting XCRI to the projects we worked with, and doing simple things to demonstrate its elegance, we received a modest commission to upgrade ioMorph for XCRI-1.0 and when it was later released XCRI-CAP 1.0, we have continued to support and upgrade ioMorph as new improved versions of the schema become available.

This means we can remain very active and at the edge of standards for the exchange of course information.

Phosphorix will continue to support the improvements and enhancements to XCRI as they become available, both forward and backwards.

Two other JISC funded regional pilots (PDP4Life and EELLS) had also worked closely with Phosphorix to extend the SHELL use cases for exchanging learner information and EELLS also began to investigate a course information service metaphor. The relationship between a formal learner record (qualifications, course and modules) and XCRI was obvious. However since none of the projects had set out to link course information to learner records, this was not realised. At the end of the Learning Matrix project we welcomed the opportunity to implement a live system called the CPD Noticeboard. With this project, the focus was purely course and event advertising for the four Universities in Liverpool; Edge Hill, John Moores, Hope and Liverpool. The live development provided a further opportunity to test the robustness of course exchange processes and build directly from the open source outputs. It was also a shift in focus from research led pilot, to business led service. One of the most interesting and revealing challenges was preparing data, in the end a spreadsheet approach was negotiated and agreed, nobody had a single system which brought all their data together, the spreadsheet acted as an intermediate solution, the spreadsheets were imported directly into the ioAgent for course information "CISAgent" from where the data could be quality assured and prepared for publishing to a Course Hub, A course Portal (instance of ioPortal) connects to the hub service to return what are called “offerings” (but now presentations in XCRI-cap 1.1)

Due to the live nature of the CPDNoticeboard and redirection by the management team, we were unable to directly offer the individual universities there own distinct services. As a result we went on to develop this with other projects and to a large extent took a risk on a new system we have released code named "RicX" but finally released publicly as "CourseExchange".

So what have we found so far;

  • The larger the institution, the more information services and systems there are for both course and learner information
  • Smaller institutions don't often have the resource to develop web services, xml feeds etc
  • Smaller institutions should more readily be willing to "advertise" course information
  • Most institutions balk at the idea of course comparison and independent consumer led quality review
  • Where there is too much repetitive data entry in any given organisation, the potential for discrepancies and problems is clear

Since the learning Matrix Phosphorix have been involved in the design of use cases and again the practical implementation of software pilots for course information services. We try to identify the known issues and are adapting CourseExchange to provide ready solutions. When adopted CourseExchange solutions can be quickly implemented and refined to save significant cost and avoid embarrassment.

There are three processes to consider...

"Readiness and Discovery" - JISC have commissioned an independent consultant to provide guidelines.

"Implementation Pilot" - A less disruptive and parallel approach to trying before you commit to any changes required.

"Live Supported Service" - How will you sustain course information services? and can you afford not to. Clearly companies like Phosphorix wish to sustain their own business and the community by winning a contract to support you, but can you not adapt current processes to do most of this anyhow?

Liverpool City of Learnings "CPD Noticeboard" built directly from the open source back office utilities for the Learning Matrix, to deliver a single stop service for finding CPD courses from any Liverpool University. This is a live managed service, underpinned by XCRI / Learning Matrix business processes and open source code by Phosphorix. However because the universities are essentially outsourcing the pilot developments and Liverpool City of Learning are not software development experts, the long term future of such an approach is questionable. It would be better either for the universities to take the software and manage it themselves, or to partner with the developers and not a man in the middle.

YHELLN's course finder service is built on the very latest ioNetwork system for course information services and XCRI. This uses the "CourseExchange" system which can be found and downloaded license and royalty free from our web site.

CourseExchange for ioNetwork (interoperability network) has been partly funded by JISC (HEFCE) projects ioNW2, MOVE-xcri, WCC-xcri, YHELLN CourseFinder, MOVE Learner Services, GMSA-xcri and SOLVS. These are among the active projects using both XCRI and Phosphorix agile software development services. Thus there is a much wider community and many common problems to solve.

Phosphorix are looking to widen the community and encourage growth by supporting early adopters. We need financial backing to do this, but financial backers need to understand the problems we are solving or the features advantages and benefits of CourseExchange.