Introducing Oracle XML Publisher

A new Oracle product that I initially saw whilst over at Open World, that sounds like it might be interesting, is "Oracle XML Publisher". According to the product homepage, "Oracle XML Publisher is a new java based product available within the technology stack of the E-Business suite. Utilizing a set of familiar desktop tools such as Adobe Acrobat and Microsoft Word users can create and maintain their own report formats based on development delivered xml data extracts. XML Publisher will then convert these documents to the XSL-FO format. Users can also obtain 3rd party provided PDF forms e.g. government tax forms and merge xml data generated from the E-Business Suite to fill the forms with the required data." Sounds interesting and not a million miles away from some of the idea's in Jon Mead's recent XML, XQuery and XDS presentation, which is why it caught my eye.

According to this powerpoint presentation on the technology behind XML Publisher:

"The classic approach to reporting is to combine all of the elements of a report into a single entity, the data definition, the layout and the translation. This report file is very unwieldy and causes problems due to its inflexibility. If a report is required that has even a minor layout change a new report file must be created to support the new requirement even thou the data definition is exactly the same. If another version of a report is required at runtime in a different language then a new report file must be created to support the new language.  This approach leads to more time and expense in maintaining the report files.

XML Publisher breaks the three components apart and treats them separately at design time, at runtime the three are brought back together by XML Publisher to generate the final formatted, translated output. There is an immediate gain in that this model is far more flexible i.e. a single data definition can support multiple layouts, multiple translations can be applied at runtime to generate translated output. This leads to a reduction in maintenance costs for all concerned.

This slide [below] summarizes the modules that make up XML Publisher.

  • Data Data engines are registered with the data handler, these can be any engine that generates XML such as Oracle Reports, Service Beans, etc.
  • Template - the layout templates to be used for the final output are stored and managed in the Template Manager. These templates are created using familiar desktop tools such as MS Word, MS Excel or Adobe Acrobat.
  • Translation the translation handler will manage the translation that is required at runtime.
  • Deliver the delivery server will take the output document and deliver to various destinations such as printer, email, fax, etc.

XML Publisher will integrate tightly with other Applications modules.
  • Common Regions - Other products will incorporate XML Publisher regions inside their own pages, users will then see a consistent user interface for submitting reports.
  • Workflow XML Publisher will integrate with the workflow product, this will allow teams to build workflows incorporating xml publisher functionality.
  • Concurrent Manager XML Publisher will integrate with the concurrent manager allowing user to schedule and execute reports and publish documents from the CM interface."
</blockquote>
<p>All sounds very interesting. Lots of buzzwords and mention of industry
standards as well - <i>&quot;The underlying technology is based on an
implementation of the W3C XSL-FO standard. XML Publisher also provides
improved performance, added security and extensions to the FO standard to
support more complex reporting requirements.&quot;. </i>Performance (always an
issue when you're dealing with the verbose XML format) seems to have been
addressed as well - <i>&quot;The XSL-FO engine that has been developed is not
only robust but also fast, this is vital. XML data by its nature generates
large objects or files and these can cause serious memory issues during
processing. XML publisher has a stream based implementation that reduces
this memory footprint allowing large XML input files to be processed.&quot;</i></p>
<p>So, I wonder how this fits in with Oracle's existing reporting
technology, Oracle Reports? Does it have any link in with
<a href="http://www.xbrl.org/">XBRL</a>, the
<a href="http://www.rittman.net/archives/000816.html">&quot;reporting standard of
the moment&quot;</a> and the focus of a
<a href="http://www.oracle.com/applications/financials/xbrl.pdf">recent
enhancement to Oracle General Ledger</a>? I guess we'll have to wait and
see, but until then here's some additional XML Publisher resources:</p>
<ul>
	<li>
	<a href="http://www.oracle.com/technology/products/applications/publishing/index.html">
	Oracle XML Publisher homepage</a></li>
	<li>
	<a href="http://www.oracle.com/technology/products/applications/publishing/XMLPublisherIntro.pdf">
	Introduction to XML Publisher</a> PDF document</li>
	<li>
	<a href="http://www.oracle.com/technology/products/applications/publishing/XMLPublisherTechnology.ppt">
	XML Publisher Technology</a> powerpoint presentation</li>
	<li>
	<a href="http://www.oracle.com/technology/products/applications/publishing/XMLPublisherApplications.ppt">
	XML Publisher Business Applications</a> powerpoint presentation</li>
	<li>
	<a href="http://www.oracle.com/technology/products/applications/publishing/XMLPublisherCMInteg.swf">
	Concurrent program integration Demo</a> flash demo</li>
	<li>
	<a href="http://www.ukoug.co.uk/calendar/show_presentation.jsp?id=1683">
	&quot;XML publisher: a new way of reporting&quot;</a> presentation by Oracle's Les
	Burchill (UKOUG membership required)</li>
	<li>
	<a href="https://www.openworld2004.com/published/1154/1154Elkady.zip">
	&quot;Oracle XML
	Publisher: Enterprise
	Reporting and Delivery Platform&quot;</a> presentation at the 2004 Oracle
	Open World</li>
</ul>