How do I associate Oasis DTD to my exported topics?

I exported a number of files that are associated with our bookmap.  However, when I open a file (such as the bookmap) I get a number of validation errors stating that the @ish* attributes cannot be validated.

To fix this I had Oxygen use the bookmap.dtd file that is located in my ./username/AppData/local/SDL/ folder, but the errors persist.

C:\Users\myname\AppData\Local\SDL\InfoShare Client\0759605102\Config\DocTypes\dita-oasis\1.2\bookmap\dtd\bookmap.dtd

Is there any solution to this issue?  I'd really like to use these files for some OT plugin development work.

  • The "DITA XML" transform is meant to address this issue. When you publish content to DITA XML, it will give you "straight DITA" where SDL CMS-specific attributes such as "ishcondition" are converted to standard DITA attributes.
    Paul M.
  • If the OT refers to DITA-OT, why not take a copy of the DITA-OT that comes pre-configured with your installation (assuming something like C:\InfoShare\App\Utilities\DITA-OT\InfoShare\). That points to the DTDs/Catalogs that are reused at API CheckIn/Validation time, by the xml editors, web client and DITA-OT.
  • ,

    The "DITA XML" outputs at least partially resolved files. Actually not for everything, I just ran a test on a small publication in SDL KC 2016 and e.g. the keyref markup is there in the output. As to the ishcondition attribute, that is not present in the output. The output is filtered as per the publishing context.

    I don't know if anyone has experimented with converting the ishcondition mechanism to DITAVAL as outlined in the DITA specification. They are rather different beasts, so I can definitely see why you get resolved output in this regard.
  • The "DITA XML" output format is there to prove that we accept file system OASIS DITA on the input side, but can also output file system OASIS DITA. The product has some richer features like @ishcondition and @ishvarref that can be used, but do not lock you in by allowing you to publish the permutations you need (e.g. through context selection).

    I know there were attempts for @ishcondition to DITAVAL, but looking at it from set theory perspective there are simply areas where DITAVAL simply cannot offer an alternative. For example all BOOLEAN clauses using AND/OR/IN operators, or how @ishcondition understand a version number (e.g. 10.0 > 9.0), or open condition name selection, etc
  • I discovered that our DITA XML transform wasn't working properly. Now that it is working for us, I've discovered something else. 1) Any <dita> topics that we use as container files for reuse contain @id values in the root element (<dita id="GUID-xxx), which is incompatible with OASIS DTDs. I have asked SDL support to look into this.

    However, now a new issue has emerged: 2) the bookmap contains the extension, .xml. I'd like to know if there is anyway to change the extension to .ditamap for the bookmap topic. I'm OK with .xml for other <map> topics. I'm not sure if I need to get professional services involved or if someone on this forum has dealt with this.