Background
Several organisations (including BearingPoint?, Deloitte and PWC) use Mediawiki as their company wiki. BearingPoint? used to have a company wiki based on Confluence. The purpose of this extension is to enable large volume migration from Confluence to Mediawiki via import/export admin functionality.
Confluence Exports
Confluence allows users to export wiki spaces as HTML files (with attachments), PDF (no attachements) and XML (with attachements). The XML file is human readable and includes metdata, content, links to attachments and metadata about attachments. The attachements are stored with no file extension in a hierarchical folder structure.
Transformation
Confluence and Mediawiki use different wiki markup. Migration therefore requires a transformation of the markup to Mediawiki syntax.
This can be done:
- Use HTML export and transform HTML to Mediawiki markup
Wikipedia list of conversion tools
We have used Diberri's converter in the past and it is very accurate.
- Use XML export with native Confluence markup and write a converter
- Extend the Universal Wiki Converter into Confluence to Mediawiki direction, not just Mediawiki to Confluence
Caution
Confluence usually makes heavy use of Macros which allow users to add special markup. It is probably out of scope to migrate all possible Macros as well.
Mediawiki Import
Mediawiki has importing functionality.
Additional Requirements
- Check if wiki user already exists, if not, create wiki user account
- Import all pages with the original author. History can be ommitted in Version 1 of the import tool
- Import all wiki comments from Confluence as comments on talk page in Mediawiki
- Attachments in Mediawiki are added inline as markup. Attachments in Confluence are at page level. Create an AttachmentExtension to provide similar look at feel in Mediawiki.
- Each Confluence wiki article belongs to a wiki space. Wiki spaces should become individual categories and all articles in a wiki space are assigned to the corresponding category in Mediawiki.
- All attachments to a Confluence wiki article should also be assigned to the category of the Mediawiki article.
