Skip to main content
Inspiring
September 9, 2024
Answered

how is my <prodname> element being mapped to a variable named "BM_Prodname"

  • September 9, 2024
  • 2 replies
  • 501 views

I have inherited a FrameMaker project that is missing some documentation. I am trying to understand how something was accomplished (so that I can modify it...).

 

In our .DITAMAP files, we have <prodname> elements. Somehow, when our PDF is published the contents of the <prodname> element appear on the Title page of our PDF.  This is great, but I am trying to understand how that mapping occurs.

 

Setup:

  • FM2020 or FM2022 (works on both)
  • We are using DITA 1.3.
  • When I publish a PDF, we use a .STS file:
    • on the DITA Options tab it has Apply Output Templates checked.
    • On the DITA Template tab, I have previously imported from TitlePageTpl.fm
  • When I open the TitlePageTpl.fm file, I can see a variable has been inserted in the exact location where the <prodname> contents magically appear in the PDF output (i.e. clearly this is somehow "inserting" the correct title":
    • The Name of this variable is BM_ProdName
    • The Definition of this variable is Product

 

What I cannot see/figure out is how <prodname> is being mapped to the variable BM_ProdName...

 

Correct answer Ian16B7

After numerous emails with Adobe support, I confirmed that there are some pre-defined variables that are mapped to various metadata. I have added the complete list that they gave me to https://community.adobe.com/t5/framemaker-discussions/ditamap-metadata-in-book-title-page-what-can-be-done/td-p/11512288, which asked this question many years ago.

2 replies

Ian16B7AuthorCorrect answer
Inspiring
February 3, 2025

After numerous emails with Adobe support, I confirmed that there are some pre-defined variables that are mapped to various metadata. I have added the complete list that they gave me to https://community.adobe.com/t5/framemaker-discussions/ditamap-metadata-in-book-title-page-what-can-be-done/td-p/11512288, which asked this question many years ago.

frameexpert
Community Expert
Community Expert
September 9, 2024

If you search for either string in

C:\Users\rick\AppData\Roaming\Adobe\FrameMaker

they both appear in this dll:

C:\Program Files\Adobe\Adobe FrameMaker 2022\fminit\ditafm.dll

So there is some kind of mapping going on when FrameMaker uses this dll for outputting dita content. If there is documentation somewhere regarding this, I don't know where it is.

Matt-Tech Comm Tools
Community Expert
Community Expert
September 9, 2024

It sounds like either your output templates have the variable definitions, or you are set up to use a ditaval that contains those values.

Sorry I can't help with a more specific answer right now...let us know what you find and I'll try to dig deeper tomorrow if needed.

 

-Matt SullivanFrameMaker Course Creator, Author, Trainer, Consultant
Ian16B7Author
Inspiring
September 9, 2024

@Matt-Tech Comm Toolsmy output template has the variable definitions I described in my original post above, but nothing else. My ditaval is selecting one of several <prodname> elements, but that does not explain how the <prodname> element is mapped to the BM_prodname variable.