DITA and XMetaL Discussion

XMetaL Community Forum DITA and XMetaL Discussion DITA specialization problem

  • tmakita

    DITA specialization problem

    Participants 1
    Replies 2
    Last Activity 9 years, 5 months ago

    Hi Forum members,

    One of my user is moving from another XML editor to XMetaL(Version#: recently.
    They have lots of DITA instances that were authored in another XML editor in the past.

    Today I received a specialized DTD file that they used for authoring. This file contains following lines:

    [code]“-//OASIS//ELEMENTS DITA User Interface Domain//EN”
    “../../../com.xxx.dita/doctypes/ditabase/uiDomain.mod”        >

    “-//OASIS//ELEMENTS DITA Highlight Domain//EN”
    “../../../com.xxx.dita/doctypes/ditabase/highlightDomain.mod”  >

    “-//OASIS//ELEMENTS DITA Programming Domain//EN”

    “-//OASIS//ELEMENTS DITA Software Domain//EN”
    “../../../com.xxx.dita/doctypes/ditabase/softwareDomain.mod”  >

    “-//OASIS//ELEMENTS DITA Utilities Domain//EN”
    “../../../com.xxx.dita/doctypes/ditabase/utilitiesDomain.mod”  >

    “-//OASIS//ELEMENTS DITA Indexing Domain//EN”
    “../../../com.xxx.dita/doctypes/ditabase/indexingDomain.mod”  >

    As you can see the specialized DTD uses standard OASIS public identifiers for their specialization module.
    I think this will invoke serious public identifier corruption when import them into XMetaL.

    Are there any ideas to solve this problem?


    Toshihiko Makita


    Derek Read

    Reply to: DITA specialization problem

    For XMetaL all of these relative paths must resolve directly to the file being referenced (catalog files and PUBLIC id values cannot be used for DITA). The reason for that is because a few of the features in XMetaL Author Enterprise's DITA authoring still use 3rd party XML parsers (MSXML, Xerces, Saxon) that don't support the same PUBLIC IDs and catalogs that XMetaL itself does. These parsers are used as part of some of the DITA authoring features such as link checking and are used primarily because they are able to run in a different process.

    Typically, your specialized DTDs would be placed near the standard DITA DTDs (often the copy included with the DITA OT) to make such paths easy to create. In order to use the DTDs that we provide (either those in the XMetaL Author Enterprise installation folder or those we include with the DITA OT) you will need to modify the paths you have shown as your folder structure is different.

    Please also make sure you follow the instructions regarding setting this up in the Help under “Working with DITA” and “DITA Specializations”.

    Ultimately we wish to externalize the parser from XMetaL and use it universally (to replace MSXML, Xerces and Saxon) but that work is not yet complete.



    Reply to: DITA specialization problem

    Hi Derek,

    Thank you for your suggestion.

    (catalog files and PUBLIC id values cannot be used for DITA

    I didn't know this feature until now. I will try to use this DTD according to your suggestion.

    Ultimately we wish to externalize our own parser and use it universally (to replace MSXML, Xerces and Saxon) but that work is not yet complete.

    Yes, I guess that there needs lots of efforts to maintain your own parser.
    I expect that you will finish this subject successfully.



  • You must be logged in to reply to this topic.

Lost Your Password?