Page 1 of 1

Is there a way to force the DITA 1.1 DTD?

Posted: Thu Oct 03, 2013 8:46 pm
by wbrisett
I have some DITA 1.2 content that all the keys have been resolved on, so we can pass content to a partner who is still on DITA 1.1. When I look at our output I'm concerned about a few elements I think we'll need to fix prior to hand-off.

Is there a way to force oXygen to use the DITA 1.1 DTD when 1.2 is specified in the DOCTYPE? I couldn't seem to find a way to do that.

Wayne

Re: Is there a way to force the DITA 1.1 DTD?

Posted: Fri Oct 04, 2013 8:41 am
by Radu
Hi Wayne,

By default Oxygen looks at the DOCTYPE Public ID specified in the DITA XML documents (topics/tasks/concepts, and so on) and tries to map them through the configured XML catalogs to DTD locations on the local disk.
For DITA the catalog which does all this mapping is:

OXYGEN_INSTALL_DIR/frameworks/dita/DITA-OT/catalog-dita.xml

If you look inside it, it contains mapping like this:

Code: Select all

<public publicId="-//OASIS//DTD DITA Topic//EN" uri="topic.dtd" xml:base="dtd/technicalContent/dtd/"></public>
but it also contains mappings like:

Code: Select all

<public publicId="-//OASIS//DTD DITA 1.1 Topic//EN" xml:base="plugins/org.dita.specialization.dita11/dtd/" uri="topic.dtd"/>
So your options would be:

1) All your DITA XML topics could have the DOCTYPE something like:

Code: Select all

<!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA 1.1 Topic//EN" "http://docs.oasis-open.org/dita/v1.1/OS/dtd/topic.dtd">
As seen in the catalog-dita.xml this would map them directly to the DITA 1.1 DTDs.
The equivalent should be done for tasks/concepts, so on.

2) You make modifications in the catalog-dita.xml which add near its top mappings like:

Code: Select all

<public publicId="-//OASIS//DTD DITA 1.1 Topic//EN" uri="topic.dtd" xml:base="dtd/technicalContent/dtd/"></public>/>
3) In the Oxygen Preferences->"XML / XML Catalog" page you add your custom XML catalog (which will have higher priority than the catalog-dita.xml) which again maps those public IDs to the DITA 1.1 DTDs.

Regards,
Radu