Last modified: 2013-06-05 18:15:51 UTC
Parsoid should encapsulate content generated from <*include*> tags and from lang-variant conversion tags so that it can be correctly serialized on save. We should use a technique similar to encapsulation of template and extension generated content. In the best case, it might be possible to piggyback on top of existing code by assigning the right mw:Object/* types which will automatically encapsulate such content, or generalize the typeof tests to cover the new scenarios.
We are round-tripping noinclude / includeonly / onlyinclude tags quite well. Please explain the issues you see here. Language variants will need some thought and serious refactoring in the LanguageConverter to wean it off mutable page-global state. The best solution is probably to treat language conversion similar to an extension or a DOM-based template. I don't think that there is a need to support unbalanced variant output, so figuring out the DOM range for encapsulation should not actually be needed.
Just a stale ticket. We dont support language variants yet. We can worry about the details when we get to it.