On 11.02.2009 13:07:12 Vincent Hennebert wrote: > Jeremias Maerki wrote: > > On 10.02.2009 13:22:01 Vincent Hennebert wrote: > >> Hi Jeremias, > >> > >> A few suggestions: > >> > <snip/> > >>> <section id="introduction"> > >>> <title>Introduction</title> > >>> <p> > >>> - The intermediate format (IF) is a proprietary XML format that > >>> represents the area tree > >>> - generated by the layout engine. The area tree is conceptually > >>> defined in the > >>> + Apache FOP now provides two different so-called intermediate > >>> formats. The first one > >>> + (let's call it the area tree XML format) is basically a 1:1 XML > >>> representation of the FOP's > >>> + area tree generated by the layout engine. The area tree is > >>> conceptually defined in the > >>> <a > >>> href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice1.html#section-N742-Formatting">XSL-FO > >>> specification in chapter 1.1.2</a>. > >>> - The IF can be generated through the area tree XML Renderer (the > >>> XMLRenderer). > >> Renaming this class into AreaTreeRenderer or AreaTreeXMLRenderer will > >> probably allow to avoid confusion in the future. > > > > -1 to that. Will break backwards-compatibility for those who are using > > this renderer directly. It would break at least two pieces of software I > > have. > > Breaking backwards-compatibility because of an important change in an > API is a thing, simply have a class renamed is a non-issue if you ask > me. It’s just a small search/replace and recompilation.
Ok, then "simply" rename FopFactory to FormattingObjectsProcessorFactory and see what the FOP users will tell you. > To make things a little bit smoother though, XMLRenderer could be made > deprecated with a suggestion to switch to AreaTree[XML]Renderer. And how would that make the situation any better? > > > If you you generate SAX events > > (AbstractXMLRenderer.setContentHandler()), working with MIME types isn't > > enough. > > I’m missing the point here? If you're selecting the XMLRenderer via its MIME type, renaming XMLRenderer to anything else is a non-issue because it would be handled inside FOP. But if you need to send the AT XML as SAX events somewhere you have to instantiate XMLRenderer yourself. > > > Besides, I don't think that would really improve the whole thing > > much. After all, with the new IF, we're not primarily talking about > > renderers but something else (IFDocumentHandler/IFPainter). > > It’s never too obvious. After all, the two sections in the documentation > are very similar. Yes, and there is just no way to make them any more dissimilar. Both are XML-based intermediate formats. Both have their use cases. Better to keep them close together so people know that there are two and how to deal with them. Jeremias Maerki