Release notes
XMLMill 2.00 (December 1st, 2004)
Major upgrade with several improvements (see below).
Read the full release notes (Java) (184 kb) (This document has been completely generated using XMLMill 2.00).
All new Products Features are eligible for XMLMill for Java and XMLMill for Domino.
- Download a trial version in our download section
XMLMill 2.0 is based on a new version of the XMLMill kernel, with many new features and performance improvements. The most important new features are:
General:
The result tree structure has been extensively modified to add a lot of new functionalities and to move the ml: namespace more into the direction of the
fo: namespace standard (although the ml: namespace is kept), facilitating the transformation from the fo: namespace to the ml: namespace (for those clients willing to use the 'high volume xml/xsl to
PDF generation capability of XMLMill).
Select to enlarge
Following changes were done to extend the functionality and are fo: compliant:
- The tag regarding the Pagination and Layout Formatting (
ml:page-template) has been replaced with a far more sophisticated element model (ml:layout-master-set and its descendants).
- The
ml:header and ml:footer tags are replaced by <static-content> tags allowing to define any content in the headers or footer (and no longer only text or an image).
- The
<ml:content> tag has been replaced by one or more <page-sequence> tags. Each <page-sequence> has a master-reference attribute referring to a <ml:simple-page-master> or ml:page-sequence-master element, allowing to apply different layouts for different pages.
- A page is divided into five different regions:
<ml:region-before>, <ml:region-body>, <ml:region-start>, <ml:region-end> and <ml:region-after>.
- The
<ml:static-content> defines the content to be repeated on each page in a region (which region is defined by the master-reference attribute).
- The
<ml:flow attributes contains the elements to be used to generate the actual content of a page.
- The
<ml:table-and-contents> is a wrapper around the <ml:table> element, allowing to define a caption for a table.
- The
<table> element has been extensively modified (new tag children) in order to provide more functionality (running headers and footers).
- The
<image> element has been replaced with the <external-graphic> element.
- The
<line> element has been replaced with the <ml:leader> attribute.
- The
<box> attribute has been suppressed. As of now a box can be defined as an empty <textbox>.
- The
<newpage> attribute has been suppressed. As of now a new page is generated based on the break-before or break-after attributes of some elements.
New Functionalities:
Support for multiple-page templates:
- Define multiple page-templates in a document (allowing to have different headers and footers in one document).
- Apply conditionally page-templates.
- Page templates can be combined so different page-templates can be applied on different pages (for example odd-pages-, even-pages).
- Add markers in headers or footers to produce running headers and footers.
- Page headers and footers can contain different elements like table(s), textbox(es), paragraphs, images, horizontal lines, ...
Extended <table> support:
Select to enlarge
- All tags have been renamed in order to move more to the fo: specification (allowing also to extend the table functionality dramatically).
- Define a (repeatable) table-footer.
- Define running headers and footers.
- Define a caption (table-and-caption).
- Define a barcode in a table-cell.
Other:
- Rotate textboxes, barcodes 90, 180 or 270 degrees.
- The Code128 barcode has been added as barcode specification.
- Performance increase between 10% and 30% (size and elapsed time).
Performance increase:
XMLMill version 2.00 is between 16% and 25% faster than the previous version, depending on the content of the generated pdf document:
| paragraph |
143205 |
106564 |
-25.50 % |
| textbox |
204654 |
159600 |
-22.00 % |
| table |
203653 |
169974 |
-16.50 % |
Volume tests executed on following environment:
- Windows XP Professional Service Pack 2 Version 2002PC (Pentium Iv 1.7 Mhz) with 1024 MB memory.
- Personal Computer Intel(R) Pentium(R)4 Mobile CPU 1.7 GHz.
- 1024 MB memory.
- java version "1.3.1_06" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1 Java HotSpot(TM) Client VM (build 1.3.1_06-b01, mixed mode).
- Free system memory: 1576448 bytes, Free JVM memory: 2031616 bytes (at start of volume test).
Document size decrease:
The generated .pdf documents have a decrease in size between 6% and 17%, depending on the content of the generated pdf document:
| paragraph |
8427881 |
7001469 |
-16.90 % |
| textbox |
9531872 |
7784239 |
-18.33 % |
| table |
8506169 |
8019626 |
-6.00 % |
Volume tests executed on following environment:
- Windows XP Professional Service Pack 2 Version 2002PC (Pentium Iv 1.7 Mhz) with 1024 MB memory.
- Personal Computer Intel(R) Pentium(R)4 Mobile CPU 1.7 GHz.
- 1024 MB memory.
- java version "1.3.1_06" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1 Java HotSpot(TM) Client VM (build 1.3.1_06-b01, mixed mode).
- Free system memory: 1576448 bytes, Free JVM memory: 2031616 bytes (at start of volume test).
Some Examples
Select to enlarge
Above example shows that:
- A document can contain different headers and footers
- A header or footer can contain images, tables, barcode, ...
Select to enlarge
Above example shows that a table:
- Can contain a table-caption.
- Can contains a table-header or table-footer containing more than one row.
- A table-header or table-footer can be changed during table generation (so on the next page the modified table-header is displayed).
Select to enlarge
Above example shows that:
- A textbox can be rotated 90°, 180° or 270°.