XCLAMS: Federated Servers
Paul LibbrechtPaul Libbrecht dev
Joshua MarksJoshua Marks dev
- Estimated workload
- several weeks
The is used in several projects of sharing platforms for learning content, among others: , and .
The project's work is to implement web-based tools in these platforms so that content in one platform can be made visible in another. Differently than federated search, the objective is to allow an easy transport of a resource from one server to another where it starts a new life while it keeps a link to the original. That transport should be initiated by a function triggered by a user who thinks it is useful to copy to bring the resource closer to him/her or a group or him/her.
Ideally, the tool should scale to support administrators that transport complete collections (as much as 1000) of selected learning resources.
Moreover, the link to the original should be kept and displayed and it should be possible for a user to request an upgrade of the transported resource if the source has been updated and if compatible. The practice of versionning systems such as git or mercurial should be a model. The project would be very successful if it can employ the 3-way-merge facilities of the underlying XWiki to this process, making it possible to work in parallel.
Such a contribution is likely to support initiatives as to build an local copy of Curriki with selected content which can serve a local community of teachers (the Curriki team has been asked for such by governments of countries with a relatively limited external internet bandwidth). Moreover, this contribution should be created in a sufficiently generic way so that any XWiki installation that has the necessary XWiki objects to transport the learning resources can exploit it.
Mentors: the XCLAMS community, including Joshua Marks, Paul Libbrecht (confirmed), Ludovic Dubost and Flavius Olaru (to be confirmed) with regular checks with active members of the communities of the servers above.
Delivery: open-source code (LGPL) using Groovy, Velocity, Unix command-line-tools, that can be made part of the XCLAMS core code.
- Developer profile
- experience with web-services (REST-like approaches, transporting JSON, XML, HTML)
- get to grips with the XWiki object model
- Java, ideally groovy, velocity