Twic I supports two kinds of URLs: normal URLs, which use a standard scheme, like http, ftp, mailto, etc, and Special URLs, which use a scheme meaningful to Twic I. Special URLs are recognised and rewritten by Twic I's page rendering logic, so that they are presented to browsers are normal URLs.
Special URL schemes supported by Twic I (whether now or in the future) include:
- isbn; this is a reference to a book, identified by ISBN number. Simply use the ISBN, with or without hyphens, as the path, for example <isbn:0345322401>. The links point to Barnes And Noble; Amazon is the obvious choice, but we have a No Amazon policy.
- isfdb; this is a reference to the Internet Speculative Fiction Data Base. It has two parts, a class identifier and an entity identifier, separated by a slash. The class identifier can be 'author' (in which case the entity identifier must be the exact author name as stored in ISFDB, eg <isfdb:author/Arthur_C._Clarke>) or 'work' (in which case the entity identifier must be work identifier, eg <isfdb:work/167c4e>). Note that the work identifiers are not necessarily stable, which means that all such links may suddenly break simultaneously (where 'break' means 'start pointing to nothing or the wrong thing'); this is a property of ISFDB, which we can't really do much about.
- imdb; this is a reference to the Internet Movie Data Base. It has two parts, a class identifier and an entity identifier, separated by a slash. The class identifier can be 'title' (in which case the entity identifier must be the exact title number as stored in IMDB, eg <imdb:title/0047577>) or 'name' (in which case the entity should be a person's name, exactly as it appears in the IMDB URL, eg <imdb:name/Lee,+Christopher>).
- lj; this is a reference to a particular Live Journal user. It has the simple form <lj:malenfant>, or, if you want to refer to a particular item, <lj:malenfant/20871>.
- groggs; this is a reference to a particular thread on GROGGS. It has the simple form <groggs:R1802342>, where the R1802342 is the GROGGS itemid (look in URLs to find these). Note that this URL is transformed to a URL pointing to a web interface to GROGGS (provided by the bottomless technical munificence of Thomas Thurman?); use of this service requires a cookie, which can be obtained by pressing the 'I'm just visiting' button on the front page.
- google; this is a reference to a google search. Examples include google:OUSFG and <google:science-fiction>. Note that if you want multi-word searches, you have to replace spaces with hyphens and leave out the speechmarks; sorry about that.
- dmoz; this is a reference to a DMOZ directory category, like <dmoz:Arts/Literature/Genres/Science_Fiction>.
- doi; this is a Digital Object Identifier, and is used like <doi:10.1000/203> or <doi:10.1073/pnas.252535999>. DO Is refer to documents like scientific papers; they can often be found on the printed text of documents available electronically.
- pmid; this is a Pub Med ID, used like <pmid:11572854>. Pub Med IDs can be found on Pub Med's search result pages, indicated by the tag 'PMID?'.
- jargon; a reference to the Jargon File. Names should be in the canonical form, used at <http://www.catb.org/jargon/> (and happily also at <http://jargon.publication.org.uk/>, the provider we actually currently use), eg <jargon:wave-a-dead-chicken>.
- rfc; a reference to an RFC? document. Just the numbers are needed, eg <rfc:2321>.
Note that these schemes may be altered, and more added, in future to support even more wonderful functionality.
Maybe we should have one for Google Sets.
Writing an invalid URL in a page should generate a link to the Bad URL page.