Showing results for 
Search instead for 
Did you mean: 
Showing results for 
Search instead for 
Did you mean: 

The PTC Community email address has changed to Learn more.

Trouble getting DITA 1.2 keyref functionality to work


Trouble getting DITA 1.2 keyref functionality to work

Hi Arbortext Experts,


We're trying to put the DITA 1.2 keyref/keydef functionality into effect and having no success. Particularly, we want to use the functionality to replace variables in text with designated literals. The Arbortext help instructions are confusing at best (we really have tried), and the DITA instructions that I've found (, "Swapping Out Variable Content") are clear but aren't working.


Are there any other resources out there?




Not much info on this functionality, unfortunatelly. And it's not obvious how to use it - took me quite a while to figure out how keys work in Arbortext. I've been thinking about writing a short tutorial but haven't had time yet.

Until then you can check the video (starting 8:45) - it's not a tutorial and just gives some clues, but it's better than nothing.

Unfortunately, we only had time to partially implement the keyref feature in Arbortext 6.0 F000. You can use key references to replace the target of linking elements, but not to insert text. That support is coming in 6.0 M040. In the meantime, I suggest using conkeyref for this purpose. Here's an example:

First, create a topic containing your variable text.

<topic id="variables">



<p><ph id="product-name">Thing-O-Matic</ph>



Next, bind a key to this topic in your map:

<keydef keys="vars" href="variables.dita"/>

And now you can reference the product-name element in your variables topic via conkeyref:

<ph conkeyref="vars/product-name">(product name here)</ph>

You can bind different topics to the 'vars' key in different maps, thus effectively implementing variable text.

I've solved the problem. The names of our keys began with a dollar sign ($), which apparently bollixes up the functionality. We now know how to use Editor's keydef/keyref feature, taking advantage of the new DITA Key Definition Maps. So if anyone has questions about that, we'd be happy to help.

Our challenge now is to get the resolved refs to print . . .