BillSeitz points to an interesting article on wiki and XML : http://www.xml.com/pub/a/2004/03/03/sgmlwiki.html
It's good stuff, but sets me ranting off at a tangent.
Wiki is two things :
When you think about combining Wiki with XML, then the question is, which of these things does XML presume to be?
- Quickness? XML is awkward, illegible and time-consuming to write.
- Hypertext? Well, 90% of XML formats are hierarchical. TopicMaps are at least network rather than tree shaped. And hypertexts can be built out of multiple documents. But nothing in the underlying make-up of XML is anything but hierarchy.
If XML didn't exists, wiki wouldn't think to invent it to solve any of wiki's own problems. It's only virtue is as the interchange format that most other people are using. But if we had freedom to invent an interchange format of our own, then we wouldn't invent XML.
I think the writer of the original article has muddied the water by trying to handle wiki layout and formatting conventions through SGML. Markup meta-languages are about structure, not appearance. However, you also may have missed the potential of XML in this area.
A wiki page has a structure with identifiable sub-elements: in particular the wiki-words themselves and the individual submissions, additions and modifications which make up that page's history. A mark-up language which represented those things unambiguously could be exploited by a presentation mechanism (e.g. XSLT) which would make it much easier than it is at present for for readers to follow and contribute to wiki-based discussions.
Not everyone agrees that XML is "awkward, illegible and time-consuming to write", but in the wiki context any structural markup could be generated automatically by software.
Hmmm.... I still think that an individual page on wiki is less structured in important ways than XML. For example, you can embed a tag into a field of content (as with HTML). XML forces you to have structure and content-nodes at the leaves.
So there seems to be a mis-match.
Well no: the XML standard specifically permits "mixed content" of the type you get in html, and all the related technologies like XSL support it very happily.
It's true that the lack of structure for discussions is one Wiki's weak-points. And I see it would be interesting to represent that structure better. (Hence TypedThreadedDiscussion :-) But it's hard to see how to square this circle. Because a key feature of wiki is its malleability. At some point, you might want someone to munge two people's contributions together to make a shorter, clearer document. (See RefactoringWiki)
If you fix the structure in a more formal way, you'll make such changes more difficult as readers have to think about how to change the formal structure.
See also ADocumentIsNotATree