First Hurdle

hedley.finger at myob.com hedley.finger at myob.com
Sun Feb 11 14:22:45 PST 2007


> Regarding FrameMaker content, I don't know myself of any special 
> issues regarding structure. The general rule with conditional 
> text is to keep things simple, else it can turn into a 
> maintenance nightmare.

I would avoid using FrameMaker conditional formats in structured 
documents.  Struct FM's "solution" for roundtripping is to insert 
processing instructions in the XML output so that it can reconstruct the 
conditional formats when the XML file is reopened. 
Unfortunately, the PIs are virtually impossible for any other XML 
application to process.  The PI solution does not handle overlapped 
conditions very well.  Suppose condition B not only overlaps condition A 
but also extends beyond condition A:

                AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
xxxxxxxxxxxx xxxxxxxxxxxxxx xxxxxxxxxxxxxx xxxxxxx xxxxxxxxxxxxxx 
xxxxxxxxxxxxxxxx
                   BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

In the XML output you would expect

xxxxxxxxxxxx xxx<? A Start>xxx<? B Start>xxxxxxxx xxxxxxxxxxxxxx xxxxxxx<? 
B End><? A End><? B Start> xxxxxxxxxxxxxx<? B End> xxxxxxxxxxxxxxxx

but you actually get

xxxxxxxxxxxx xxx<? A Start>xxx<? B Start>xxxxxxxx xxxxxxxxxxxxxx xxxxxxx<? 
A End> xxxxxxxxxxxxxx<? B End> xxxxxxxxxxxxxxxx

Note that the B condition starts inside A but ends outside A, that is, B 
is not properly nested in A.  Add a few more conditions and you quickly 
reach a situation that is absolutely impossible to unravel with, say, XSLT 
conversions.

The kosher way to do the above is to have conditional attributes on 
elements.  The above might be rendered as 

xxxxxxxxxxxx xxx<ph cond="A">xxx<ph cond="B">xxxxxxxx xxxxxxxxxxxxxx 
xxxxxxx</ph></ph><ph cond="B"> xxxxxxxxxxxxxx</ph> xxxxxxxxxxxxxxxx

Adobe should really clean up the PI nesting so that the "correct" XML way 
could be derived from them.

Otherwise, you should look at Advantica Sourcerer or West Street ABCM (= A 
Better Condition Manager? Hmmmm), which both apply conditional attributes 
the proper XML way.

Regards,
Hedley

--
Hedley Finger
Training Content Developer and Tools Specialist
MYOB Australia Pty Ltd <http://myob.com/au>
P.O. box 371   Blackburn VIC 3130   Australia
12 Wesley Court   Tally Ho Business Park   East Burwood VIC 3151 Australia
<mailto:hedleyDOTfingerATmyobDOTcom>
Tel. +61 3 9222 9992 x 7421,   Mob. (cell) +61 412 461 558

© MYOB Technology Pty Ltd 2007


More information about the framers mailing list