Last modified: 2014-02-14 03:38:53 UTC
Rather than having a single interwiki table local or shared it would be better to allow the source for interwiki prefixes to be specified in site config and allow for multiple sources being specified in a list such that prefixes fall back to the other sources when not found in one. Our interwiki database would become one type of interwiki source, an interwiki database source. We would also add in support for other interwiki source types such as CSV, CDB, perhaps an xml file, the | separated format we had lying around, etc... Rather than inserting interwiki prefixes into the database on installation we could also instead directly reference a source interwiki file inside core as the last fallback. Our default config would include a file default to the default interwiki links in core, and a database source pointing to the local or shared (depending on settings) with our default database connection. Sites would be able to configure it however they want. They could drop the interwiki database and edit simple text files for their interwiki links instead. They could have multiple interwiki sources such as a central interwiki table, and also have a local one so that links can be overridden. Or even better in large setups like Wikimedia there could be a global central interwiki table, a project level interwiki table for interlanguage links and some overrides, and project local interwiki tables for specific overrides desired by the local community.