Skip to main content
Oscar_the_GamingWriter
Inspiring
December 17, 2019
Question

Cross References displaying custom text

  • December 17, 2019
  • 8 replies
  • 2275 views

Hello all,

Thanks in advance to anyone who reads this.

 

I've used FM for many years but have never tried this, and am wondering if it is possible. I'm thinking it is, I simply have never had need to do this. I am using FM unstructured documents. 

 

To explain: I have a book comprised of multiple documents. With the finished PDF, I want the reader to be able to click on a term which sits within a paragraph in a table and have FM take the reader to a table in a separate document which contains a description of this term. I also want to be able to define what displays on the source entry. In other words, I want what the reader clicks on to display whatever text I want it to display.

 

So, I:

1. create a cross-reference marker where the term exists in the destination document and table.

Then I:

2. go to the source document and table, highlight the term where I want to cross-reference to be invoked, and go into the Cross-Reference window to try and create the reference.  

But I do not see how I can have the text of my choice appear as the cross reference. In other words, if I want the blue link to display <pizza pie>, how do I do that?

 

I hope this makes sense. And I appreciate any feedback. I notice that there are cross-reference building blocks. And I thought that would do it, but these don't quite do it either.

 

Once I have this accomplished, I need to be able to do this across separate books. I have a large project with 24 books (and five documents or so within each book) which have to be cross-referenced in this fashion. 

 

Thanks again to any who can help.

 

Cheers,

Oscar 

This topic has been closed for replies.

8 replies

Oscar_the_GamingWriter
Inspiring
December 18, 2019

To everyone who has suggested ideas and procedures to help me - THANK YOU. The Adobe Framemaker community may be small, but it's certainly mighty. I have much to consider right now.  And it's all because of your wonderful insights. Thanks again. 

 

For now, I am going to plow ahead with the creation of the basic documents.  A little later I will start focusing 100% of how to accomplish my x-ref . At the moment I'm thinking my best options are either pop-up windows or perhaps a glossary of terminology at the end of each book.

As Arnie said...."I'll be back".

- and thanks again all.

Matt-Tech Comm Tools
Community Expert
Community Expert
December 18, 2019

Oscar, have you considered inserting Glossary and GlossaryTerm markers in your docs, allowing you to generate a glossary for each book?

-Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
Oscar_the_GamingWriter
Inspiring
December 18, 2019

A glossary may be what I'll need to do. I am so grateful to the entire Adobe Community for chiming in with so many great suggestions and ideas.

You guys all rock. Thank you.

LinSims
Community Expert
Community Expert
December 18, 2019

Does the definition have to be in a table in a completely separate document? Because if I read things aright, you can use an alert to create a note in the PDF file. I haven't done this myself, but I think what happens is that you insert the alert into the FM file, and then when it is converted to PDF, it becomes a Note. (That's the thing that looks like a text bubble.)

 

Shlomo Perets sells a plugin called FrameMaker-to-Acrobat Timesavers that will, amongst other things, allow you to create a pop-up message when clicked that is useful for glossary terms (ClickMsg). Others let you link to other pages in external PDFs, which may be closer to what you're looking for.

Matt-Tech Comm Tools
Community Expert
Community Expert
December 18, 2019

Along with Shlomo's plugin, you can use an Alert hypertext marker to display a pop-up note in PDF, as shown below, but the note icon often shows in a conspicuous location, meaning you may want to reposition and resave the PDF after publishing.

 

Here's the marker used to produce the PDF shown at the bottom of this post

 

Here's the PDF output (I repositioned the text of the alert for clarity. One thing to note: I tried using the alerttitle hypertext command, which adds a label to the text box, but it wasn't working as anticipated.

 

-Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
Matt-Tech Comm Tools
Community Expert
Community Expert
December 18, 2019

Hi Oscar, are you asking how to create a link that consists of your term?

You do this by inserting a hypertext marker into a text range using a character tag.

Then, the hypertext marker can use the gotolink command to jump to the word and definition in the destination doc.

 

Alternately, you can set the term as a run-in paragraph, and then cross-reference to that term using its paragraph tag.

The term and definition might look like this:

TERM - A term is a phrase used in one or more places that needs an entry in a document like this one.

 

Because (in this example) the word TERM is its own paragraph, you can now xref to that specific content using the <$paratext> building block.

 

Both the Hypertext Marker and Cross-Reference approaches have their plus/minus, so you'll have to play with each to see which one works for you.

 

Caveat: When you start linking to documents outside the book structure itself, the hyperlinks in a PDF or other electronic output won't know where to go for the link.

-Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
Oscar_the_GamingWriter
Inspiring
December 18, 2019

Thanks for the suggestion about using a run-in paragraph to define the one word (in this case: TERM). 

I may try that. But the bigger issue for me is the need to make the x-refs work across multiple books.

Barb Binder
Community Expert
Community Expert
December 17, 2019

But I do not see how I can have the text of my choice appear as the cross reference. In other words, if I want the blue link to display <pizza pie>, how do I do that?

I may be on the wrong track here—it's been a really long day—but I think Oscar wants the spot x-ref marker words to appear in the x-ref. So if the spot x-ref marker is pizza pie in a multi-line paragraph, then he wants the x-ref to say something like "see pizza pie on page 3". To the best of my knowledge, unstructured FrameMaker can't put the marker text in the x-ref. The best a spot x-ref can do is display a generic text string like "see page 3" or "see the graphic on page 64" where FrameMaker is only taking charge of the page number, and the rest is what we define as the x-ref format. 

 

~Barb

~Barb at Rocky Mountain Training
Matt-Tech Comm Tools
Community Expert
Community Expert
December 18, 2019

Agreed, there's no <$markertext> building block, which leaves him with phrase+hyperlink marker+character tag as a workaround.

 

@Bob, were you referencing the lack of a <$markertext> building block in your earlier reply?

-Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
Bob_Niland
Community Expert
Community Expert
December 18, 2019

That's correct, Matt. Here's an older thread on it.

In this instance, however, even if FM had Xref by $markertext, it might not be of use, due to the OP's need to deep-link cross-document.

Named destinations, stable paths (same dir, consistent relative path, stable absolute path/URL) also arise.

LinSims
Community Expert
Community Expert
December 17, 2019

I think you can create spot cross references in unstructured now. At any rate, Matt Sullivan has it documented in his FrameMaker: Working with Content book. You have to insert a Marker of type Cross-reference, then use the Insert > Cross-reference dialog and change the source to Cross-Reference Markers.

 

I'm not certain, however, if this would work if the item you're referring to is in another PDF altogether. I have a vague recollection that you have to have both books open in order to create the xref, and you also have to be certain that the final documents remain in the same relative locations. 

Matt-Tech Comm Tools
Community Expert
Community Expert
December 17, 2019

Yes, not only is it written up in Working with Content, but I use spot cross-references in creating that book.

In my case, I use it to refer to untitled screen shots that have no associated paratext.

The result is something like "See the graphic on page 64"

-Matt Sullivan, FrameMaker Course Creator, Author, Trainer, Consultant
Oscar_the_GamingWriter
Inspiring
December 17, 2019

Thanks kindly for the input Bob Niland.

I've actually never created a structured document in FM. For the twenty years I've used it, I've done 100% unstructured. What exactly does it mean to be a structured document? How is it different? I'm wondering if it's a big deal to do this project as a structured project instead of instructured. I'm only about 3 - 4% into it so it hopefully won't be too painful.

Thanks again. I'll be doing more research and will probably be back. 🙂

Inspiring
December 17, 2019

Oscar,

   This post responds to your question "What exactly does it mean to be a structured document?"

 

   FrameMaker's formatting capbility can be used with two distinct data models. Ignoring details such as tables and graphics, an unstructured document is a sequence of tagged paragraphs, which may contain text ranges to which character formats have been applied.

 

   A structured document, however, is a hierarchy of elements. For example, a document may be a Letter that is divided into an Address, followed by a Salutation, a Body, and a Closing. The Address may consist of a Name followed by multiple Lines. The Body can consist of Paragraphs, Lists, and Sections. A Section begins with a Title that is followed by Paragraphs, Lists, and Sections. Rules in the structured document define which elements are required and where they are permitted. Paragraph and Character formats are assigned automatically to elements based on their context. Typically, the Title of a Section within a Section has a different paragraph format than that the Title of the containing Section. Similarly, an Item in a List within a List may use a different format (more indentation and a different numbering style) than an Item in the main List. The writer doesn't need to assign the formats; he just has to define the relative positions of the different elements.

 

Consider a List that uses the familiar Numbered1 and Numbered paragraph formats. Suppose the writer wants to reverse the order of the first two list items. In an unstructured document, he needs to rearrange the two paragraphs and assign Numbered1 to the paragraph that is now first and Numbered to the one that is now second. In a structured document, he can move things around and (assuming the template has been correctly defined) the reformatting happens automatically.

 

Because one element can be used in multiple contexts, writers don't have to learn as many tags or where to use them. Of course, somebody has to define the elements that will be used, the contexts in which each is permitted, and how they will be formatted.

 

--Lynne

 

Bob_Niland
Community Expert
Community Expert
December 17, 2019

What you might be looking for is usually called a "spot cross-reference", or "cross reference by $markertext". FM doesn't have that in unstructured, although it's been on the wish list since FM4.0 or so (and this is not an exaggeration).

 

Reportedly, it's not too hard to do in structured, but I've never done it.

 

As it happens, a current project of mine needs it. I want all instance of key terms to be Xrefs to where the term is defined or principally discussed, including all grammatic variations of the term: Term, term, Terms, terms, etc. I've been doing it with small Anchored Frames at headings, containing the Xref targets at small point size, in a couple of run-in ¶formats, and in a color to be hidden by Color Views in final render. Works great.

Inspiring
December 17, 2019

Bob,

    If I understand Oscar's request, you are correct that what Oscar wants can be done very easily in structured documents. There are two features that make this possible:

 

1) In an unstructured document, a cross-reference links to a paragraph containing a particular marker. However, a structured document consists of a hierarchy of elements which may be paragraphs (such as a title, a body paragraph, or a list item), sequences of paragraphs (such as a list containing multiple items or a section containing a title followed by multiple paragraphs, lists, or subsections), or a text range within a paragraph (to which a character format may but need not be applied). In a structured document, a cross-reference links to an element. Thus, it is easy to create cross-references to phrases within a paragraph.

 

2. One or more named strings called attributes can be associated with an element. It is possible but not necessary to display attribute values in a document. A cross-reference format can insert an attribute value. So if Oscar wants the text "pizza pie" to occur in the cross-reference but not in the cited content, he can assign the value "pizza pie" to an attribute named "food" of a paragraph that never uses the phrase "pizza pie" and create a cross-reference that retrieves the attribute value.

 

    --Lynne