Error DOTX067E

Having trouble installing Oxygen? Got a bug to report? Post it all here.
rww
Posts: 23
Joined: Wed Jul 24, 2013 12:40 am

Error DOTX067E

Post by rww »

I've moved my computer from Linux to Mac OS and installed Oxygen. Although I can generate a PDF, I get lots of the following errors after running a DITA PDF transformation:

[DOTX067E]: No string named '' was found for language 'en'. Add a mapping for the string ''. The location of this problem was at (File = /Users/rww/.../filename.dita, Element = xref:1;9:95)

The information for this error says "This generally indicates that the toolkit's strings needs to be updated to support your language, or that your language setting is incorrect." I have no idea what I need to do in order to update the 'toolkit strings' or change the language setting (setting the language in Preferences didn't seem to help).

Does anyone know how to fix this? Thanks.

Richard
Radu
Posts: 9449
Joined: Fri Jul 09, 2004 5:18 pm

Re: Error DOTX067E

Post by Radu »

Hi Richard,

Did you make any changes to the XSLTs used to customize the PDF output?
If you open the original source DITA topic on which the error is reported at processing time and look at the first xref reference element on it, how does it look like? Did you manually set a type attribute on it? If so, what value did you set to it? To what target element does it refer? A table, a figure, a topic, etc?

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
rww
Posts: 23
Joined: Wed Jul 24, 2013 12:40 am

Re: Error DOTX067E

Post by rww »

Hi Radu

I have an output class defined in my customizations called noPageCitation which seems to be causing these errors. The class is used to prevent page numbers appearing in xrefs. When I omit this output class the error goes away. Interestingly, the output does actually work correctly, despite the error, and page numbers are being omitted correctly.

Here's the definition for the output class:

Code: Select all


            <xsl:when test="contains(@outputclass, 'noPageCitation')">
<fo:inline>
<xsl:call-template name="insertVariable">
<xsl:with-param name="theVariableID" select="''"/>
<xsl:with-param name="theParameters">
<pagenum>
<fo:inline>
<fo:page-number-citation ref-id="{$destination}"/>
</fo:inline>
</pagenum>
</xsl:with-param>
</xsl:call-template>
</fo:inline>
</xsl:when>
Radu
Posts: 9449
Joined: Fri Jul 09, 2004 5:18 pm

Re: Error DOTX067E

Post by Radu »

Hi,

That is the cause indeed.
The insertVariable template you are calling is defined in:

OXYGEN_INSTALL_DIR/frameworks/dita/DITA-OT/plugins/org.dita.pdf2/xsl/common/vars.xsl

and it calls another template findVariable which issues a warning if the parameter theVariableID cannot be mapped to any translated string. In your case, the parameter has an empty value and thus the warning message is issued.

So you do not need to call that template at all, probably in your case it's as easy as doing:

Code: Select all

           <xsl:when test="contains(@outputclass, 'noPageCitation')">
<fo:inline>
<fo:page-number-citation ref-id="{$destination}"/>
</fo:inline>
</xsl:when>
Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
rww
Posts: 23
Joined: Wed Jul 24, 2013 12:40 am

Re: Error DOTX067E

Post by rww »

I've substituted the code and no errors are reported now. Seems to have done the trick!

Thanks for your help.
Post Reply