keydefs cannot be found (newbie question)
Post here questions and problems related to editing and publishing DITA content.
keydefs cannot be found (newbie question)
Hi all,
I used to have my keydefs directly in my bookmap, inside the frontmatter element. This worked fine, but it wasn't very elegant. So I decided to move all keydefs into a separate map and then simply add a reference to this map, like so:
The problem now is that the keydefs cannot be found any more! In Author, I get this message:
Thanks!
/ulf (using Author 19.1)
I used to have my keydefs directly in my bookmap, inside the frontmatter element. This worked fine, but it wasn't very elegant. So I decided to move all keydefs into a separate map and then simply add a reference to this map, like so:
Code: Select all
<mapref href="../common/my_keys.ditamap"/>
Does this mean I have to update all my key references, in all my topics, with the path to the newly created keys map?! (Answer is probably obvious, but as I said, I'm a DITA newbie.)Description: Key definition 'ProductName' not found in the DITA Map. Keys are gathered from the root map: my_bookmap.ditamap.
Thanks!
/ulf (using Author 19.1)
Re: keydefs cannot be found (newbie question)
Hi,
Where exactly did you add that <mapref> in the bookmap?
It's hard to say what went wrong, could you maybe post some sample DITA content with how the mapref looks like and in what context you added it?
Also make sure that if you have profiling conditions applied (a DITAVAL filter for example) that the mapref is not referenced in a context which is excluded by some DITAVAL condition.
Regards,
Radu
Where exactly did you add that <mapref> in the bookmap?
It's hard to say what went wrong, could you maybe post some sample DITA content with how the mapref looks like and in what context you added it?
Also make sure that if you have profiling conditions applied (a DITAVAL filter for example) that the mapref is not referenced in a context which is excluded by some DITAVAL condition.
Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
<oXygen/> XML Editor
http://www.oxygenxml.com
Re: keydefs cannot be found (newbie question)
Hi Radu,
I added the mapref last in frontmatter (same place my original keydefs were). Looks like this:
(There's probably nothing wrong with the path - the map can be opened via "Open file at cursor" in Author.)
The keydef map looks like this:
And a keyref may look like this:
/ulf
I added the mapref last in frontmatter (same place my original keydefs were). Looks like this:
Code: Select all
<frontmatter>
<topicref format="ditaval" href="bm_GENtrace%20Operator%20Guide.ditaval" print="no" scope="peer" toc="no">
<topicmeta>
<navtitle>DITAVAL file</navtitle>
</topicmeta>
</topicref>
<preface/>
<notices/>
<booklists>
<toc/>
</booklists>
<mapref href="../common/my_keys.ditamap"/>
</frontmatter>
The keydef map looks like this:
Code: Select all
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "http://docs.oasis-open.org/dita/v1.1/OS/dtd/map.dtd">
<map>
<title>GENtrace keys</title>
<keydef keys="ProductName">
<topicmeta>
<keywords>
<keyword>GENtrace</keyword>
</keywords>
</topicmeta>
</keydef>
.
.
Code: Select all
<p>You must have attended the <ph keyref="ProductName"/> operator training.</p>
Re: keydefs cannot be found (newbie question)
Hi,
The only problem that I see is that the reference:
is to a DITA Map outside of the folder where the main published DITA Map is located. The publishing engine has always had problems when this is done, there is a special transformation scenario parameter which can be set to overcome this:
https://www.oxygenxml.com/doc/versions/ ... -refs.html
Otherwise, in my tests, having the "my_keys.ditamap" in the same folder as the main DITA Map I could not find any problem using keys from the submap.
As a non-related observation, I see you have a reference to a DITAVAL file in the master DITA Map. What is it for?
Regards,
Radu
The only problem that I see is that the reference:
Code: Select all
<mapref href="../common/my_keys.ditamap"/>
https://www.oxygenxml.com/doc/versions/ ... -refs.html
Otherwise, in my tests, having the "my_keys.ditamap" in the same folder as the main DITA Map I could not find any problem using keys from the submap.
As a non-related observation, I see you have a reference to a DITAVAL file in the master DITA Map. What is it for?
Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
<oXygen/> XML Editor
http://www.oxygenxml.com
Re: keydefs cannot be found (newbie question)
Radu,
Thank you for your answer!
Reg. keydefs: OK I understand. It's a shortcoming (bug?) in DITA OT. But, just to be sure I understand completely, here's an example:
Let's say I have a folder structure like companies/products/manuals and I want to use company- or product-related keyrefs in one of the manuals. How do I do that if I cannot refer to keys in underlying folders...?! [Should I just abandon the folder structure all together, and put all files in one single, (very crowded) folder?]
BTW: You say it's the publishing engine that may have problems with keydefs in underlying folders. But I get these problems when validating. (I haven't published anything yet...)
Reg. the DITAVAL file: I haven't started looking at/learning about ditaval yet. I just assumed there should be (normally is) a ditaval file associated with each document (manual). (Your comment makes me suspect I was wrong )
Cheers,
/ulf
Thank you for your answer!
Reg. keydefs: OK I understand. It's a shortcoming (bug?) in DITA OT. But, just to be sure I understand completely, here's an example:
Let's say I have a folder structure like companies/products/manuals and I want to use company- or product-related keyrefs in one of the manuals. How do I do that if I cannot refer to keys in underlying folders...?! [Should I just abandon the folder structure all together, and put all files in one single, (very crowded) folder?]
BTW: You say it's the publishing engine that may have problems with keydefs in underlying folders. But I get these problems when validating. (I haven't published anything yet...)
Reg. the DITAVAL file: I haven't started looking at/learning about ditaval yet. I just assumed there should be (normally is) a ditaval file associated with each document (manual). (Your comment makes me suspect I was wrong )
Cheers,
/ulf
Re: keydefs cannot be found (newbie question)
Hi,
So:
We have a page with lots of videos about using Oxygen:
https://www.oxygenxml.com/videos.html
and you can search in it for "DITA profiling".
Regards,
Radu
So:
You can refer to DITA submaps placed in subfolders of the main folder (where the main published DITA Map is located). But there are problems when you refer to maps/topics located in folders which are not subfolders of the main folder.How do I do that if I cannot refer to keys in underlying folders...?! [Should I just abandon the folder structure all together, and put all files in one single, (very crowded) folder?]
If you have validation problems, if you open the main DITA Map in the DITA Maps Manager view, use the "Validate and check for completeness" action and you obtain errors related to various keys not being found, then I suspect there is another problem with your project. But without having a sample project to test on my side I cannot give you more details. If you want to provide a sample DITA project you can directly email us (support@oxygenxml.com).BTW: You say it's the publishing engine that may have problems with keydefs in underlying folders. But I get these problems when validating. (I haven't published anything yet...)
Usually the DITAVAL is not referenced in the DITA Map. If you duplicate and edit the transformation scenario you use for publishing, it has a "Filters" tab where you can specify a reference to a DITAVAL file.Reg. the DITAVAL file: I haven't started looking at/learning about ditaval yet. I just assumed there should be (normally is) a ditaval file associated with each document (manual). (Your comment makes me suspect I was wrong )
We have a page with lots of videos about using Oxygen:
https://www.oxygenxml.com/videos.html
and you can search in it for "DITA profiling".
Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
<oXygen/> XML Editor
http://www.oxygenxml.com
Return to “DITA (Editing and Publishing DITA Content)”
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ SDK-API, Frameworks - Document Types
- ↳ DocBook
- ↳ TEI
- ↳ XHTML
- ↳ Other Issues
- Oxygen XML Web Author
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Content Fusion
- ↳ Feature Request
- ↳ Common Problems
- Oxygen JSON Editor
- ↳ Feature Request
- ↳ Common Problems
- Oxygen PDF Chemistry
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Feedback
- ↳ Feature Request
- ↳ Common Problems
- Oxygen XML WebHelp
- ↳ Feature Request
- ↳ Common Problems
- XML
- ↳ General XML Questions
- ↳ XSLT and FOP
- ↳ XML Schemas
- ↳ XQuery
- NVDL
- ↳ General NVDL Issues
- ↳ oNVDL Related Issues
- XML Services Market
- ↳ Offer a Service