This is the mail archive of the docbook-apps@lists.oasis-open.org mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Experience with Framemaker 7.o anyone?


On Tue, Jun 25, 2002 at 02:25:42AM -0500, Michael Smith wrote:
> 
> [Stuff deleted]
>
> I found that all of my <ulink> elements disappeared on import into
> Frame 7 -- not just the ones inside <literallayout>.
> 
> It does allow you to insert <ulink> content into documents, but
> doesn't actually turn that content into hyperlinks (it doesn't turn
> <link> content into hyperlinks either).
> 
> So as far as I can tell, the only mechanism for inserting URL
> hyperlinks is to use the native non-XML FrameMaker hyperlink markup
> (i.e., type "message URL http://foo"; in the Special>Hypertext dialog,
> just as you would in Frame 6). On export to XML, these native Frame
> hyperlinks show up as processing instructions:
> 
>   <?FM MARKER [Hypertext] message URL http://foo?>
> 
> that aren't going to be useful to any applications other than Frame.
> 
> There is an Element Tag submenu under Special>Hypertext, but <ulink>
> and <link> are not on it.
> 
> On the upside, it does let you use the native DocBook <xref> element
> for inserting cross references, and exports those to XML correctly.

FrameMaker's cross referencing mechanism is a good match with
<xref>, but appears to be incompatible with <link>.
In FrameMaker, a cross reference is a zero-width marker
that is always expected to generate its own text.  That is
just like xref.  But for link, there is no place to put
your own text that would get turned into hot text for a
hyperlink.

You can certainly insert a <link> element with a linkend
attribute in FrameMaker.  But it is not a FrameMaker cross
reference, so you can't apply a FrameMaker cross reference
style to generate text, such as "on page xxx".  The best
I can see is to append a Frame cross reference marker
to the end of a link element's content, and assign a
Frame style that generates " on page xxx".  The current
read/write rules don't import a link like this this,
and it doesn't appear to be possible with the provided
read/write syntax.  But a Frame C API function could do it.

Ulink is a different case, since you aren't trying to link
to another DocBook/Frame document, so the Frame cross
reference mechanim doesn't come into play.  Ulink is just an
element with text content and a url attribute.  I think it
is probably an oversight that ulink isn't handled by the
export process.  There is a note in the rules file (in
C:\Program Files\Adobe\FrameMaker7.0\structure\xml\xdocbook\app\rules
on my system) that says "ULink is handled by the client
during import and export".  When Frame says "client", they
mean a custom program written in C using
the Frame API.  There is ulink code in the supplied source
code (..\structure\xml\xdocbook\src\export.c), but it
appears to not work.

For rendering ulink to print within FrameMaker,
you could create a formatting rule in the EDD
to render the url attribute as text, if that is
your style.  That formatting rule for ulink isn't
there in the provided EDD, though.  

I think this is another indication that the DocBook
application included with Frame 7 is a good start,
but it is not finished.  I'm not interested in debugging
their export.c code, so I wonder if we could recruit Adobe
to finish it?  It would certainly be to their market
advantage to do so, given the size of this mailing list.
Does anyone have a contact at Adobe that might listen
to such a pitch?  Any Adobe people listening?

-- 

Bob Stayton                                 400 Encinal Street
Publications Architect                      Santa Cruz, CA  95060
Technical Publications                      voice: (831) 427-7796
Caldera International, Inc.                 fax:   (831) 429-1887
                                            email: bobs@caldera.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]