I think this would be a great idea for an extension to the Wiki Web system. The Wiki Web is likely to grow; there's a chance it will grow so large that millions of people will start contributing to it. There are lots of multi-word phrases that have different meanings in different contexts. Sooner or later, somebody will try to define a page and find out that it has already been defined - as something
completely different.
Example: I might decide to write a whole set of pages about
ImplementingScheme, and in the process produce a page called
ImplementingFundamentalDataTypes. But somebody else might be
WritingPerlInterpreters, and will also want to produce a page called
ImplementingFundamentalDataTypes. Clash! Now, one or both of us has to rename our pages. This makes the names longer, as
ImplementingFundamentalDataTypesInScheme and
ImplementingFundamentalDataTypesInPerl.
Another alternative might be to introduce hierarchical namespaces to Wiki. Then if you visit my
ImplementingScheme page, links that went to
ImplementingFundamentalDataTypes would take you into the
ImplementingScheme namespace. So the real name of the page would be something like
ImplementingScheme::
ImplementingFundamentalDataTypes. But in many situations you might not have to type that much.
It's a thought. Maybe it would
MakeTheWikiTooComplicated. But maybe not.
-
- -- EdwardKiser
I was also thinking about this, but found no real solution. Currently I think about
- one global namespace (globalspace)
- multiple dedicated namespaces (localspaces)
- any page in a localspace produces a hint in the globalspace
- a LinkPattern may produce more than one link
- the priority is
- same localspace
- globalspace
- other localspace
- display option 1 [DateTypes] [Global.DataTypes] [Java.DateTypes]
- display option 2 [DateTypes] [=>] (leading to a link page)
--
HelmutLeitner
An existing example of something like this is the
WikiClone DolphinWikiWeb from Object Arts (I'm running it on NT) which organizes into separate "wikis" by directory. Entities in one "wiki" can be linked to just like other
WikiPages by including the "wiki" name with a colon in front. --
ClaudeMuncey
This is also possible in
UseModWiki using an intersite map file. But this does neither help you know what pages exist in the different wikis nor does it create automatic links if you don't care. -- hl
One idea I had running through my head recently was that all the trouble with off-topic discussions and
DifficultToWikifyNames could be solved if this simple technique was followed:
Essentially, a
WikiLink is a
WikiNamespace followed by a colon, followed by a word. If the
WikiNamespace is missing, the default is the current namespace. If the colon is missing, but the word looks like a
WikiName, then it is interpreted as a
WikiLink. --
RobHarwood
Namespaces could be arranged hierarchically. Then there would be a reserved namespace named "top" or "root", and every namespace might be able to refer to its parent as "up", and you could have absolute paths and relative paths, just like files in a filesystem. A namespace could be differentiated from a regular name by the fact that a namespace ends with a colon. So you could have top:Namespace:NestedNamespace:SomePageOrOther as an absolute path, and up:OtherNamespace:DifferentPage as a relative path.
However, refactoring Wiki pages would become a lot more complicated. Since, now, nobody can rename a page once it has been created - in the future, no-one will be able to move a page in the hierarchy, or rename a namespace. Can you put a header on every page in a namespace, perhaps by editing the namespace? Then you can make one that says "This namespace has been moved..." -- EdwardKiser
I don't see why forward slashes
/ cannot be used. Simply emulate folders. So, the examples given initially could be Scheme/
ImplementingFundamentalDataTypes and Perl/
ImplementingFundamentalDataTypes simple. It transparently allows multiple levels (e.g. Perl/
ImplementingFundamentalDataTypes/Ints ). Then again, maybe on this Wiki it looks too much like
FreeLinks ... -- Mr Harris.