Last modified: 2014-04-19 00:46:14 UTC
We need a public API end point integrating with the general MediaWiki API that provides at least the following functionality: * HTML DOM retrieval per page and revision. Basically the /en/Foo?oldid=<n> end point. * HTML DOM expansion: POST a DOM (or fragment), return re-expanded DOM * HTML DOM saving: POST a modified DOM and a summary, and save it as a new revision. As long as we are using Wikitext as our storage format, saving requires a conversion to HTML and a separate save step. The individual steps should *internally* be exposed to other users including the VisualEditor extension. There is probably no need to expose the HTML2WT conversion. We should instead aim to provide an HTML-only public interface. The integration should use an URL schema that makes it easy to map some or all of the functionality to a stand-alone (non-PHP) backend to avoid PHP startup costs in the future.
(In reply to comment #0) > * HTML DOM saving: POST a modified DOM and a summary, and save it as a new > revision. Just to clarify, we don't need this for June/July (we're doing it in VisualEditor currently) - though it's a nice-to-have. :-) The real focus for us is the HTML DOM expansion, which we will want ASAP for templates and other generated content blocks.
Building prod. tools based on Parsoid output (for example to produce offline snasphots) needs this MW API. http://parsoid.wmflabs.org/ can only be a temporary solution...
Bumped the prority. We should get to this after Wikimania.
Marco and I are taking this on.
The PHP parser output is exposed through action=parse: http://en.wikipedia.org/w/api.php?action=parse&redirects&prop=text%7Cdisplaytitle&format=xml&page=FOOBAR
Once https://gerrit.wikimedia.org/r/#/c/93527/ is merged we'll provide interim access to our internal Parsoid cluster through front-end caches at http://parsoidcache.svc.eqiad.wikimedia.org/. This implements our internal https://www.mediawiki.org/wiki/Parsoid#The_Parsoid_web_API. In the longer term it will be replaced with a more general MediaWiki content API that we are still working on.
Lowering the priority as this is now live: http://parsoid-lb.eqiad.wikimedia.org/ https://parsoid-prod.wmflabs.org/ (also supports spdy)