The best way to describe the process flow is "a complete spaghetti bowl".
The first steps in a file-by-file sense are index.php --> {various setup
files} --> Wiki.php --> {Article.php/SpecialPage.php}. Somewhere along the
way a global OutputPage object is initialised as $wgOut and things can be
written to it at any point in the main code flow. Once things fall back out
to Wiki.php the unholy trinity of Skin, OutputPage, SkinTemplate collude to
produce page output, through a weird back-and-forth that I can never quite
get my head around. Once the output code stack has returned, a final stack
is run that does cleanup tasks.
If you're interested in writing a proper flow chart, that would be something
really useful.
--HM
"Jean-Marc van Leerdam" <j.m.van.leerdam(a)gmail.com> wrote in message
news:4e4d410b1001302358l4b5e5923i4a96a6c2b883f189@mail.gmail.com...
Hi,
Does
MW.org provide some relatively high level description of the
process flow / object interaction that is followed when rendering
mediawiki pages?
I've been searching
mediawiki.org and the source tree from my mw
installation but so far I only found class-based 'local' information.
I am happy to contribute a more high level description, if that is not
yet available, but would much prefer to use (and if needed contribute
to) an existing description.
Do we have class models and process flow descriptions available somewhere?
I am most interested in the way Parser, ParserOutput, Skin and the
related classes interoperate, as well as how user extensions and hooks
are supposed to interact with the core mediawiki software.
--
Regards,
Jean-Marc
--
. ___
. @@ // \\ "De Chelonian Mobile"
. (_,\/ \_/ \ TortoiseSVN
. \ \_/_\_/> The coolest Interface to (Sub)Version Control
. /_/ \_\
http://tortoisesvn.net