- InterWiki
InterWiki is a facility for creating
link s to the many wiki wiki webs on theWorld Wide Web . Users avoid pasting in entire URLs (as they would for regular web pages) and instead use ashorthand similar to links within the same wiki (intrawiki links).Unlike
domain name s on the Internet, there is no globally defined list of InterWiki prefixes, so owners of a wiki must define a mapping appropriate to their needs. Users generally have to create separate accounts for each wiki they intend to use (unless they intend to edit anonymously). Variations in text formatting and layout can also hinder a seamless transition from one wiki to the next.By making wiki links simpler to type for the members of a particular community, these features help bring the different wikis closer together. Furthering that goal, InterWiki "bus tours" (similar to
webring s) have been created to explain the purposes and highlights of different wikis. Such examples onWikipedia include srlink|Wikipedia:TourBusStop and srlink|Wikipedia:WikiNode.Notations
InterWiki notations vary, depending largely on what kind of "link pattern" a wiki uses. The two most common link patterns in wikis are
CamelCase and free links (arbitrary phrases surrounded by some setdelimiter , such as ).double square brackets CURIE syntax uses a single set of square brackets.Accordingly, InterWiki links on a CamelCase-based wiki frequently take the form of "Code:PageName", where "Code" is the defined InterMap prefix for another wiki. Thus, a link "WikiPedia:InterWiki" could be rendered in
HTML as a link to an article onWikipedia for example srlink|Wikipedia:Interlanguage links. Linking from a CamelCase-wiki to a page that contains spaces in its title typically requires substitution of the spaces with underscores (e.g. WikiPedia:Main_Page).InterWiki links on wikis based on free links, such as Wikipedia, typically follow the same principle, but using the delimiters that would be used for internal links. These links can then be parsed and escaped as they would be if they were internal, allowing easier typing of spaces but potentially causing problems with other special characters. For example, on Wikipedia,
appears as , and
(former syntax:
) appears as .The
MediaWiki software has an additional feature which uses similar notation to create automatic interlanguage links - for instance, the link
(with no leading colon) automatically creates a reference labelled "Other languages: Deutsch | ..." at the top and bottom of, or in a sidebar next to, the article display. Various otherwiki software systems have features for "semi-internal" links of this kind, such as support fornamespace s or multiple sub-communities.Implementation
Internally, a wiki that uses InterWiki links needs to have an "InterMap" that defines the mapping from wiki-code links to full URLs. For example,
might appear as , but link tohttp://usemod.com/cgi-bin/mb.pl?InterWiki
.Since most wiki systems use URLs for individual pages where the page's title appears at the end of an otherwise unchanging address, the simplest way of defining such mappings is by substituting the InterWiki prefix for the unchanging part of the URL. So in the example above, the
MeatBall:
has simply been replaced by
in creating the target of thehttp://usemod.com/cgi-bin/mb.pl? HTML rendered link.Care must be taken, however, in the handling of special characters - both those that violate local link pattern rules, and those that must be represented specially in crafting a URL for the target system. So a CamelCase-based wiki must make special provision for recognising that non-
alphanumeric characters can be part of an InterWiki link, and even a free link based system may disallow local links containing characters such as '+ ' or '" ' for technical reasons. Similarly, characters such as '? ' and '& ' are treated specially within URLs and may need to be converted into some other representation, as might unusual characters when linking between sites using differentcharacter encoding s.However, rather than creating a new list from scratch for every wiki, it is often useful to obtain a copy of that from another site. Sites such as
MeatballWiki [http://www.usemod.com/cgi-bin/mb.pl?InterMap] and theUseModWiki site contain comprehensive lists which are often used for this purpose - the former being publicly editable in the same way as any other wiki page, and the latter being verified as usable but potentially out of date.MeatballWiki uses a mechanism called
FileReplacement to directly use the openly editable InterWiki map for its own pages. Changes to that map do not take effect immediately, but the InterMap configuration file is re-generated if the wiki page remains unedited for a defined period of time. This delay is intended to assure proper review of all changes to the map while not preventing open editing.horthand for non-wiki sites
Most InterMap implementations simply substitute the InterWiki prefix with a full URL prefix, so many non-wiki websites can also be referred to using the system. A reference to a definition on the
Free On-line Dictionary of Computing , for instance, could take the form
which would tell the system to append "foo
" to "http://www.foldoc.org/foldoc/foldoc.cgi ?", and display the link as [http://foldoc.org/foldoc.cgi?foo Foldoc:foo] . This makes it very easy to link to commonly referenced resources from within a wiki page, without the need to even know the form of the URL in question.The InterWiki concept can equally be applied to links "from" non-wiki websites.
Advogato , for instance, offers a syntax for creating shorthand links based on a MeatBall-derived InterMap.See also
*
CURIE , emerging W3C standard
*
*
*Wiktionary:
*Wikimedia Meta-Wiki:
*Wikimedia Commons:
*
*External links
* [http://www.usemod.com/cgi-bin/mb.pl?InterMap Discussion of the InterWiki concept] at
MeatballWiki
* [http://www.usemod.com/cgi-bin/mb.pl?FileReplacement Discussion of the FileReplacement concept]
Wikimedia Foundation. 2010.