Hi Scott,

If you would only wanted your DTD specialization to be used by Oxygen when editing or for validation, adding a reference to the custom XML catalog in the Oxygen Preferences->"XML / XML Catalog" page would be enough.

But indeed for publishing the DITA OT publishing engine needs to have an extra plugin installed, there are no parameters which would allow passing a reference to an extra XML catalog to the DITA OT when it starts.

https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/dita-integrate-specialization.html

You could actually keep a separate "plugins" folder outside of the DITA OT main folder as long as you refer to it in the "DITA-OT3.x/config/configuration.properties" file:

https://www.dita-ot.org/dev/parameters/configuration-properties-file.html

But this would still mean the DITA OT folder would need to be changed, changes made to the "configuration.properties" followed by running the DITA OT integrator task which adds an extra reference to your XML catalog from the main DITA OT XML catalog.

And the main problem is that on Windows, Oxygen is usually installed in the "Program Files" folder which is read-only and making changes to files there is problematic if you do not have admin privileges.

Some more ways to distribute a custom DITA OT to the users:

1) Make the custom DITA OT available as an add-on:

https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/contribute-external-dita-ot-extension.html

For example here:

https://github.com/oxygenxml/dita-ot-3x-plugin

In the Oxygen main menu "Help->Install new add-ons" you can point Oxygen to an HTTP location containing the zipped DITA OT and Oxygen would download it and make it available in the "Preferences->DITA" page.

2) Add the custom DITA OT folder directly inside the framework folder. an Oxygen framework can provide also custom transformation scenarios and the custom transformation scenarios could use the "Parameters->"dita.dir"" parameter to refer to the custom DITA OT bundled with the framework.

3) If you use a Git repository for example you could also commit the custom DITA OT inside the repository so that everyone gets it when they check out the project.

Regards,

Radu

Radu Coravu
Oxygen XML Editor

On 12/20/22 22:19, Scott Prentice wrote:

It's interesting to see that Chemistry apparently honors the catalog defined in the framework, so you can do a PDF build from content using a custom doctype with just the framework installed. Not exactly what I need, but good to know!

...scott


On 12/20/22 11:46 AM, Scott Prentice wrote:

Thanks, Stefan!

Yeah .. I was hoping to avoid having the users install a plugin .. just install the framework. But I can see that's not going to fly. I'm thinking that the simplest (least effort for the users, and least opportunity for error), is to provide a pre-configured OT installation that they can point to from Preferences. It'll just be ..

    1) Install framework,
    2) Point to custom OT in Preferences

That way if something goes sideways, they haven't messed with the detail Oxygen installation.

Cheers,
...scott


On 12/20/22 11:33 AM, Stefan Jung wrote:
Hey Scott,

You should bundle the grammar files in a toolkit plugin. This is correct. In your oxygen framework you need to configure the matching rules to recognize your custom grammar files. You need to install your plugin to the DITA-OT as well. You need to use the dita.specialization.catalog.relative extension point in your plugin.xml.

BR



Gesendet mit OX Mail

Scott Prentice <s...@leximation.com <http://s...@leximation.com>> hat am December 20, 2022 um 8:25 PM geschrieben:

    I think I know the answer to this question, but want to confirm
    that I'm not missing something.

    I've got a set of custom DITA DTDs wrapped up in an OT plugin.
    If I install this plugin in the OT, I'm able to successfully
    generate output from content that uses the public IDs defined by
    those DTDs. However, what I'd like is to include this plugin in
    an Oxygen framework, and have the custom doctypes honored for OT
    builds without "installing" the plugin.

    As it stands, users can install the framework and edit topics
    and maps using the custom doctypes. It validates fine and all is
    well, but when they go to do an OT build, it fails to recognize
    the location for the custom DTDs.

    I thought there was an OT parameter that let you specify the
    location of an alternate catalog file, but I'm not seeing that.
    Was hoping that I could get this to work by just having the
    users install the framework.

    It seems like my only options are (after installing the
    framework) ..

    - install and integrate the "doctypes" plugin into the default
    OT in Oxygen

    - OR .. provide another OT that has the doctypes plugin
    installed and have the users point to that as a custom DITA-OT
    in Oxygen

    Thoughts?

    Thanks!
    ...scott


_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user

_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user
_______________________________________________
oXygen-user mailing list
oXygen-user@oxygenxml.com
https://www.oxygenxml.com/mailman/listinfo/oxygen-user

Reply via email to