UseInterWikiNamesEverywhere

From W3C Wiki

Hey, here's an idea: How about we use n3-style q-names as our preferred wiki link syntax?! They almost perfectly match InterWiki names, so it's not a big jump for wiki folk. They make the distinguishing characteristic of a links be the presence of a colon inside or at the start of a word, which is rather distinct from English text.

What would this achieve apart from annoying people because the ExpectedSyntax did not work anymore? What about links with spaces?  Or are you suggesting supporting as well? guest

To be practical the changes to InterWiki would be:

  • allowing in-page overrides of prefixes, probably with a #pragma like @prefix or #prefix
  • allow prefix+suffix to be a relative URI (maybe that's how it is already)
  • not having interwiki syntax make links look different. Probably links within
  the site should still look different from outside ones, but there's no need for
  links to other wikis to look different from other websites.  This distinction
  is already lost with RFC:2396, etc.
  • probably the default binding for the empty prefix would be "./", ie the current
  wiki.   (Or maybe the absolute name of the current wiki, if you want some kind
  of hierarchical pages, which you probably do.)
  • I lean toward not hiding the prefix in rendering it as HTML, but I'm not at
  all sure.   So one would see esw:[[Special:Recentchanges|RecentChanges]] instead of just [[Special:Recentchanges|RecentChanges]].
  • Hide it, definitely. That's the kind of thing alt text can be used for. guest

Anything else? Any reason not to implement this and try it? I think my suggested regexp would be \w*:[^][\000- (){}"]*(\w|[#]) meaning optional word before the colon, then any URI characters, but ending in a more restricted set, so you can safely run it up against punctuation. Real URIs almost never end in a period or comma. If you need one of those, then use [ ...] syntax.

   -- :sandro   <--- that's how I should be able to do sandro

How does it interact with the emerging "@prefix default <foo>" syntax for n3? I guess there's no need to worry about that.


The relationship between qnames and URIs is interesting. If you have a browser with extensible URI schemes, you can paste in qnames as if they were URIs, I suppose. JEP-0081 suggests such extensibility is rare. Can you do it with proxy autoconfig scripts? It doesn't seem like it.

It's pretty easy to do in Konquerer:

...and now you can paste "esw:Foo" and it works. Of course you can do the same for rdf:, rdfs:, owl:, foaf:, etc.

In Galeon, you can do it like this:

  • Add a line to your .gnome/Gnome like `esw-show=shortcut "%s"`
  • add a script in your path called "shortcut", like this
#!/bin/sh
long=`echo $1 | sed 's;esw:;http://esw.w3.org/topic/;'` 
galeon $long


This isn't quite right in that it opens a new window. With "-x" it uses an existing window, but not necessarily the one you clicked/pasted in. Hrm.

Of course the shortcut script could be a lot smarter. Be careful not to hand any esw: pseudo-URIs back to galeon, or you'll get a loop starting up browsers.

--- Under Mozilla

  1. Bookmark the front page.
  2. edit the bookmark
  3. remove the end bit ("FrontPage")
  4. set keywork to esw (or esw: if you like) and click OK
  5. type esw SomePage to go to the page.

BTW, why doesn't MoinMoin use conventional URI escaping for odd characters?