
Hello Frank, Please see some answers below:
I understand that a topic ID must be unique within the scope of the root ditamap used for publishing the content. Your understanding is incorrect, the topic ID must be unique inside the same topic file. So for example if in the "topic.dita" you have two inner topics, all topics existing inside the "topic.dita" must not have duplicate IDs. But if you have "topic1.dita" and "topic2.dita", the <topic> elements in both files can have the same ID, the DITA standard does not impose a uniqueness restriction for the topic IDs in the context of the entire project.
DITA 1.3 specs: https://www.oxygenxml.com/dita/1.3/specs/archSpec/base/uri-based-addressing....
This addressing model makes it possible to reliably address elements that have values for the |@id| attribute that are unique within a single DITA topic, but which might not be unique within a larger XML document that contains multiple DITA topics.
So there is an arbitrary combination of only 9 characters, mostly letters. But perhaps sufficient for ensuring uniqueness... Indeed the ${id} ID value we generate has about 9-10 unique letter-digit combinations. We consider this to be enough. The number of unique combinations is about 36 (26 letters in the English alphabet + 10 digits) to the power 9, it's 1 followed by about 14 digits. We consider
But it is true that Oxygen and other tools attempt to create by default unique IDs for a created topic file in the context of the entire project, some CMSs may need them, sometimes the publishing (for example Oxygen's DITA to WebHelp output) may use these unique IDs for certain features. this to be enough for a value which is not intended to be unique by the DITA specification anyway. By the way we also have a longer "${uuid}" editor variable which can be used and expanded, a unique sequence of 32 hexadecimal digits if you want something even more unique. https://www.oxygenxml.com/doc/versions/25.1/ug-editor/topics/editor-variable...
However, when I use the "DITA > Insert > Insert New DITA Resource" command, oXygen does not honor the "ID Option" setting, but creates IDs which are identical to the file name. Usually an ID derived from the title or from the file name is more user friendly when for example inserting references to elements inside a topic.
We would do the same by default when using the "File->New" wizard dialog to create the topic but the topic is not yet saved on disk so we do not yet know its file name or its title so we use the random value instead. In the Oxygen Preferences->"DITA / Topics" page there is an "Use the filename as the value.. of the root element id" which you can uncheck if you want. Regards, Radu Radu Coravu Oxygen XML Editor On 3/27/23 11:43, Frank Dissinger wrote:
Hi all,
I understand that a topic ID must be unique within the scope of the root ditamap used for publishing the content.
FrameMaker, which I used previously, creates IDs of the type
id172OC0C03J7
So there is an arbitrary combination of 11 digits and letters.
In oXygen I have set the "DITA > ID Option" as follows:
${localName}_${id}
Which creates IDs of the following type:
task_rf2_vcg_ywb
So there is an arbitrary combination of only 9 characters, mostly letters. But perhaps sufficient for ensuring uniqueness...
However, when I use the "DITA > Insert > Insert New DITA Resource" command, oXygen does not honor the "ID Option" setting, but creates IDs which are identical to the file name.
This is not what I want and surely not suitable for ensuring uniqueness.
How can I get oXygen to honor the "ID Option" setting or make it otherwise generate IDs with arbitrary characters which are likely to be unique?
Regards,
Frank
--
*Frank Dissinger*
Documentation Manager
....................................................................
*CGS Publishing Technologies International GmbH*
*Email *frank.dissinger@cgs-oris.com | *Web* www.cgs-oris.com <http://www.cgs-oris.com/>
*Address* Kettelerstr. 24 | D-63512 Hainburg | Germany
*Phone* +49 6182 9626-27 | *Fax* +49 6182 9626-99
*Commercial register* Offenbach, HRB no. 21495
*Managing directors* Bernd Rückert, Christoph Thommessen
https://www.cgs-oris.com/Signatur.png <https://www.cgs-oris.com/signatur>
_______________________________________________ oXygen-user mailing list oXygen-user@oxygenxml.com https://www.oxygenxml.com/mailman/listinfo/oxygen-user