Parsoid/PostProcessor:DOM Tag Minimization

The image on the right is the thumbnail of the paper sketch of the algorithm currently implemented in Parsoid. This is implemented as a post-processor to minimize tag use (maximizes tag overlap, merges adjacent identical tags). The sketch is the best way to understand the algorithm. This is currently applied to a set of 4 HTML tags (B, I, U, and S), but can be extended to other inline tags.

Example 1: BII gets restructured to: BII

Example 2:  BIU  UI I gets restructured to:  BIUUI I