(anonymous guest) (logged out)

Copyright (C) by the contributors. Some rights reserved, license BY-SA.

Sponsored by the Wiki Symposium and the Nuveon GmbH.

 

Add new attachment

Only authorized users are allowed to upload new attachments.

This page (revision-15) was last changed on 19-Mar-2007 22:14 by 77.128.16.220  

This page was created on 09-Mar-2007 23:55 by 77.128.50.33

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 7 changed one line
-- Gregor Hagedorn - 2007-03-09
-- [[Gregor Hagedorn]] - 2007-03-09
At line 21 changed one line
Wikis have the advantage that even if the rendering of the page degrades for whatever reason (version change, copy-pasting text from other source, adding additional modules, etc.) the users always have access to the source to see what the author meant -- and the first users who notices the fault can even correct it! The rules prohibiting [[InvisibileMarkup]] and [[DestructiveMarkup]] aid here a lot.
Wikis have the advantage that even if the rendering of the page degrades for whatever reason (version change, copy-pasting text from other source, adding additional modules, etc.) the users always have access to the source to see what the author meant -- and the first users who notices the fault can even correct it! The rules prohibiting [[InvisibleMarkup]] and requiring [[NonDestructive]] markup aid here a lot.
At line 26 added 56 lines
The problem is more serious when one adds new features. For instance, if double-comma
is not included in Creole 1.0 and 40 million people begin using it for inline quotes, and
double-comma is added to Creole 2.0, it will be painful to upgrade.
Markup languages like XML or HTML are much safer, because character sequences reserved for
markup are well defined (elements, attributes and entities, that's about it) and a given version
can list them exhaustively.
What we could do with Creole is to list all sequences which are optional (such as double-underscore
for underlined text, single-lessthan for HTML, etc.) or reserved (double-dollar,
double-exclamation mark, or even plus or dollar at the beginning of a line), so everyone knows what
to escape to be safe.
This goes against [[ExtensibleByOmission]], but I agree with Gregor on its limits.
-- [[YvesPiguet]], 2007-Mar-14
That's what I attempted in [[HintsOnExtending]] and what can be done more systematically in [[CreoleAdditions]]. Still I see no problem with leaving out of the specification things like markup inside headings or links.
-- [[Radomir Dopieralski]], 2007-Mar-14
Yes, that's exactly what I meant. The problem with not being explicit enough is that the
author shouldn't assume her markup is guaranteed to stay verbatim in headings, for instance.
In a description of hotels, you should write something like {{{==Hotel du Lac ~*~*~*==}}}
or {{{==Hotel du Lac {{{***}}}}}}{{{==}}} to be safe wrt future Creole versions or engine upgrades.
-- [[YvesPiguet]], 2007-Mar-14
I've written it in [[Talk.ExtensibleByOmission]], but I'll rephrase it here: It's a wiki, not a multi-platform, multi-system, fool-proof, implementation-independent code framework. If the wiki admin changes something -- upgrades version, installs new plugins, imports page database, etc. -- it's is natural to check the results and possibly run some simple search-and-replaces in case of conflicts. Even if the fault is not detected immediately, it's easily fixed by the first user who sees it. Dead wikis, with no users correcting the page text are safe too -- they obviously don't receive parser upgrades or new modules.
I can see three most common scenarios:
* A wiki that uses native markup adopts Creole, either in mixed mode or as the new markup. All the pages need to be checked and maybe even converted anyways.
* A new wiki is created, and uses Creole and some of CreoleAdditions. After some growth, the community decides to add some new markup that is needed -- the admin writes appropriate plugin or module, and picks the markup that is the least likely to conflict with existing page database. If there is high possibility of conflicts, then the pages are checked.
* Some text is moved between two wikis supporting Creole. The user who pastes the text checks proper rendering.
-- [[Radomir Dopieralski]], 2007-Mar-14
Experience shows I'd better not argue at this stage, so I won't :-)
-- [[YvesPiguet]], 2007-Mar-14
[[Extensible by Omission]] is very appropriate for the question whether to allow nested markup (inside headings etc.) or not. It just has limitations. Yes, upgrading to different markups that requires a few corrections is fine, I am not worried. I am deeply worried, however, if Creole uses [[Extensible by Omission]] as first principle, and does not provide a mean to allow a complete Wiki scenario. Without something like the [[Generic Extension Element Proposal]] I believe **all** wikis will only be able to run in Creole plus native mode. This is not adding a few more markup rules, but several dozens (and all of which have to be escaped where occurring in normal text). This is the kind of "massive" extensible by omission that I worry about.
The point about "living" and "dead" wikis strongly depends on usage scenarios. Wikis are not limited to live discussions that become meaningless after a few years - they are a hot topic in science, open access journals, collaborative handbook writing, etc. What is a Wiki-handbook with several thousand pages, a few hundred readers and perhaps a few dozen active users (I believe not an uncommon scenario in specialized sciences) - is it dead or alive?
And yes, I believe even fully dead wikis needed for reference will be updated, simply because the machine will have to be updated, and older software may simply not run with other software needed on the machine. My scenario is that Creole-based Wiki content is build in software A, which then dies/no longer runs on PHP version 43, and content (10000 pages) must be migrated to Creole-aware software B.
Creole should not expect to foresee the future or prevent change, but lessen the burden of change somewhat. My "package" would be:
* Add an extension rules for link syntax (Currently a link is double brackets and may contain two parts separated by bar, future versions of creole may add semantics to further parts). I may be mislead because I am personally waiting for usable semantic web/ontology wikis, but I believe this is perhaps the most central extension for the future of wikis.
* Adding a [[GenericExtensionElementProposal|generic extension container]] (supporting native-Wiki markup extensions as well as dynamic plugins or actions, allowing functional Wikis in Creole-only mode with no other normal text escaped.)
* Perhaps indeed make "reservations" of a few extra symbols (2 or 3, not dozens!). This is kind of the opposite of [[Hints on Extending]], right?
* Making it explicit that future Creole may - or may not support markup inside headings or links.
-- [[Gregor Hagedorn]] - 2007-03-09
Version Date Modified Size Author Changes ... Change note
15 19-Mar-2007 22:14 7.989 kB 77.128.16.220 to previous lessen the burden of change...
14 14-Mar-2007 23:53 5.352 kB YvesPiguet to previous | to last Okay
13 14-Mar-2007 19:34 5.247 kB 83.18.142.106 to previous | to last not change-proof
12 14-Mar-2007 15:53 3.906 kB YvesPiguet to previous | to last Double-escape typo :-(
11 14-Mar-2007 15:51 3.906 kB YvesPiguet to previous | to last Escape liberally
10 14-Mar-2007 12:06 3.493 kB RadomirDopieralski to previous | to last extending hints
9 14-Mar-2007 11:26 3.228 kB YvesPiguet to previous | to last Reserved sequences?
8 14-Mar-2007 10:46 2.329 kB RadomirDopieralski to previous | to last wikis are fault-tolerant
7 14-Mar-2007 10:45 2.328 kB RadomirDopieralski to previous | to last wikis are fault-tolerant
6 14-Mar-2007 10:45 2.328 kB RadomirDopieralski to previous | to last wikis are fault-tolerant
5 14-Mar-2007 10:44 2.316 kB RadomirDopieralski to previous | to last wikis are fault-tolerant
4 14-Mar-2007 01:02 1.567 kB 77.128.12.173 to previous | to last Extensible By Omission will not often work for wiki markup
3 10-Mar-2007 08:33 1.126 kB RadomirDopieralski to previous | to last Creole 1.0 will be stable
2 09-Mar-2007 23:56 0.587 kB 77.128.50.33 to previous | to last
1 09-Mar-2007 23:55 0.581 kB 77.128.50.33 to last markup codes occur in text and need to be escaped, preventing extens.by omission
« This page (revision-15) was last changed on 19-Mär-2007 22:14 by 77.128.16.220