<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi Scott,</p>
<p>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.<br>
</p>
<p>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.</p>
<p><a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/dita-integrate-specialization.html">https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/dita-integrate-specialization.html</a></p>
<p>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:</p>
<p><a class="moz-txt-link-freetext" href="https://www.dita-ot.org/dev/parameters/configuration-properties-file.html">https://www.dita-ot.org/dev/parameters/configuration-properties-file.html</a></p>
<p>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.</p>
<p>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.<br>
</p>
<p>Some more ways to distribute a custom DITA OT to the users:<br>
</p>
<p>1) Make the custom DITA OT available as an add-on:</p>
<p><a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/contribute-external-dita-ot-extension.html">https://www.oxygenxml.com/doc/versions/25.0/ug-editor/topics/contribute-external-dita-ot-extension.html</a></p>
<p>For example here:</p>
<p><a class="moz-txt-link-freetext" href="https://github.com/oxygenxml/dita-ot-3x-plugin">https://github.com/oxygenxml/dita-ot-3x-plugin</a></p>
<p>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.</p>
<p>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.</p>
<p>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.<br>
</p>
<p>Regards,</p>
<p>Radu</p>
<pre class="moz-signature" cols="72">Radu Coravu
Oxygen XML Editor</pre>
<p></p>
<div class="moz-cite-prefix">On 12/20/22 22:19, Scott Prentice
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:d190cce3-f742-76b7-f533-ba0ecc846923@leximation.com">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p><font face="Verdana">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!</font></p>
<p><font face="Verdana">...scott<br>
</font></p>
<p><br>
</p>
<div class="moz-cite-prefix">On 12/20/22 11:46 AM, Scott Prentice
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:e80c4f3c-2386-0c02-cfb3-d59dc3ffe75f@leximation.com">
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<p><font face="Verdana">Thanks, Stefan!</font></p>
<p><font face="Verdana">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 ..</font></p>
<p><font face="Verdana"> 1) Install framework, <br>
2) Point to custom OT in Preferences</font></p>
<p><font face="Verdana">That way if something goes sideways,
they haven't messed with the detail Oxygen installation.</font></p>
<p><font face="Verdana">Cheers,<br>
...scott<br>
</font></p>
<p><br>
</p>
<div class="moz-cite-prefix">On 12/20/22 11:33 AM, Stefan Jung
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:1491869537.31575.1671564822215@office.mailbox.org">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8">
<meta charset="UTF-8">
<div> Hey Scott, </div>
<div> <br>
</div>
<div> 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. </div>
<div> <br>
</div>
<div> BR </div>
<div> <br class="prevent-remove">
</div>
<div> <br class="prevent-remove">
</div>
<div> <br>
</div>
<div class="ox-mail-signature"> Gesendet mit OX Mail </div>
<div> <br>
</div>
<div class="reply-header"> Scott Prentice <<a
href="http://sp14@leximation.com" rel="noopener
noreferrer" moz-do-not-send="true">sp14@leximation.com</a>>
hat am December 20, 2022 um 8:25 PM geschrieben: </div>
<div class="ox-mail-content-wrapper">
<blockquote class="quoted-mail">
<p><font face="Verdana">I think I know the answer to this
question, but want to confirm that I'm not missing
something.</font></p>
<p><font face="Verdana">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.
<br>
</font></p>
<p><font face="Verdana">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.</font></p>
<p><font face="Verdana">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.<br>
</font></p>
<p><font face="Verdana">It seems like my only options are
(after installing the framework) ..</font></p>
<p><font face="Verdana">- install and integrate the
"doctypes" plugin into the default OT in Oxygen</font></p>
<p><font face="Verdana">- OR .. provide another OT that
has the doctypes plugin installed and have the users
point to that as a custom DITA-OT in Oxygen<br>
</font></p>
<p>Thoughts?</p>
<p>Thanks!<br>
...scott</p>
</blockquote>
</div>
</blockquote>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
oXygen-user mailing list
<a class="moz-txt-link-abbreviated moz-txt-link-freetext" href="mailto:oXygen-user@oxygenxml.com" moz-do-not-send="true">oXygen-user@oxygenxml.com</a>
<a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user" moz-do-not-send="true">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
</blockquote>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
oXygen-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:oXygen-user@oxygenxml.com">oXygen-user@oxygenxml.com</a>
<a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">
</pre>
</body>
</html>