I'm generally in favor of this plan. I haven't looked over the specific code experiments yet but the plan sounds solid. A few notes:
* over time we'll want to do things like migrate File: pages from 'plain wikitext that happens to have an associated file' to 'structured data about a file'. This will be magnificent. * I wouldn't overmuch emphasize things like "oh you could have pages in markdown or tex!", though it does sound neat and all. :) * we need to make sure that import/export round-trips things consistently, including for "non-wikitext" stuff. Either that means making import/export content-aware, or shipping the serialized form through the export XML? As for timing; Daniel's hoping for something in the neighborhood of an August deployment. I think if we keep things minimal that should be feasible; it's somewhat similar to the migration of Image stuff with MediaHandler classes. I'm a bit uncertain about the idea of 'multipart' pages, though attached data YES YES in some clean way is needed. -- brion On Mon, Mar 26, 2012 at 7:45 AM, Daniel Kinzler <[email protected]>wrote: > Hi all. I have a bold proposal (read: evil plan). > > To put it briefly: I want to remove the assumption that MediaWiki pages > contain > always wikitext. Instead, I propose a pluggable handler system for > different > types of content, similar to what we have for file uploads. So, I propose > to > associate a "content model" identifier with each page, and have handlers > for > each model that provide serialization, rendering, an editor, etc. > > The background is that the Wikidata project needs a way to store > structured data > (JSON) on wiki pages instead of wikitext. Having a pluggable system would > solve > that problem along with several others, like doing away with the special > cases > for JS/CSS, the ability to maintain categories etc separate from body text, > manage Gadgets sanely on a wiki page, or several other things (see the > link below). > > I have described my plans in more detail on meta: > > http://meta.wikimedia.org/wiki/Wikidata/Notes/ContentHandler > > A very rough prototype is in a dev branch here: > > http://svn.wikimedia.org/svnroot/mediawiki/branches/Wikidata/phase3/ > > Please let me know what you think (here on the list, preferably, not on > the talk > page there, at least for now). > > Note that we *definitely* need this ability for Wikidata. We could do it > differently, but I think this would be the cleanest solution, and would > have a > lot of mid- and long term benefits, even if it's a short term pain. I'm > presenting my plan here to find out if I'm on the right track, and whether > it is > feasible to put this on the road map for 1.20. It would be my (and the > Wikidata > team's) priority to implement this and see it through before Wikimania. I'm > convinced we have the manpower to get it done. > > Cheers, > Daniel > > _______________________________________________ > Wikitech-l mailing list > [email protected] > https://lists.wikimedia.org/mailman/listinfo/wikitech-l > _______________________________________________ Wikitech-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikitech-l
