Paper Sizes in MOOXML: Inflexible, incomplete and ignores ISO 216 standards.
MSOOXML or Ecma 376 never seems to have high regard for other work of other standards bodies worldwide, in that this “standard” always seems to redefine a limited subset of what is actually being used internationally. The issue at hand today is the way how MSOOXML defines a Paper Size in its documents.
Sections 3.3.1.61 (page 2770) and 3.3.1.62 (page 2774), both of which involve duplicate printer settings, define a "paperSize" attribute. This value represents a integer value which in turn is referenced to an internal lookup table which lists 68 fixed paper sizes.
These paper-size codes are apparently based on corresponding paper-size registry codes in a Microsoft Windows, rather than using the standard paper-size names as defined in ISO 216, ANSI Y14.1, and similar standards.
|
|
To illustrate, a Page Setup usage may look like:
<w:pageSetup ... w:paperSize=”9” />
where “9”, by cross referencing the lookup table above, corresponds to “A4 paper (210mm by 297mm)”
This is unreadable for someone who is unaware of the Operating System specific “PaperSize Registry Value Table” maintained by Microsoft. It is not clear on how or if possible other Paper Sizes, e.g. “Imperial” (30”x22”), can be added or removed depending on the changing requirements of standard and non-standard based paper sizes around the world. Maintaining this additional lookup table will be burdensome to ECMA and ISO as ISO, ANSI, DIN, SIS, JIS and all the other respective standards bodies whom presently maintain their own paper sizes.
This erroneous use of XML should be corrected, and the correction is relatively simple: it would be more usable for future interoperability if the XML was something like:
<w:pageSetup ... w:paperSize=”ISO:A4” />
In contrast, ISO 26300 (the OpenDocument Format) employs a much more flexible scheme: it simply describes the paper size by recording the physical width and height of the page, leaving the assignment of symbolic paper-size names to the application user interface.
yk.



Comments