1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
2 | <!--Arbortext, Inc., 1988-2011, v.4002-->
|
---|
3 | <!DOCTYPE reference PUBLIC "-//OASIS//DTD DITA Reference//EN"
|
---|
4 | "reference.dtd">
|
---|
5 | <?Pub Inc?>
|
---|
6 | <reference id="plugins-overview" xml:lang="en-us">
|
---|
7 | <title>Creating DITA-OT plug-ins</title>
|
---|
8 | <shortdesc>The DITA Open Toolkit comes with a built in mechanism for
|
---|
9 | adding in extensions through plug-ins. These plug-ins may do a wide
|
---|
10 | variety of things, such as adding support for specialized DITA DTDs
|
---|
11 | or Schemas, integrating processing overrides, or even providing entirely
|
---|
12 | new output transforms. Plug-ins are the best way to extend the toolkit
|
---|
13 | in a way that is consistent, easily sharable, and easy to preserve
|
---|
14 | through toolkit upgrades.</shortdesc>
|
---|
15 | <refbody>
|
---|
16 | <section><p>A plug-in consists of a directory, typically stored directly within the
|
---|
17 | <filepath>plugins/</filepath> directory inside of the DITA-OT. Every plug-in is controlled
|
---|
18 | by a file named <filepath>plugin.xml</filepath>, located in the plug-in's root
|
---|
19 | directory.</p><?Pub Caret 158?><p>Benefits
|
---|
20 | of extending the toolkit through plug-ins include:<ul>
|
---|
21 | <li>Plug-ins are easily sharable with other users, teams, or companies;
|
---|
22 | typically, all that is needed is to unzip and run a single integration
|
---|
23 | step. With many builds, even that integration step is automatic.</li>
|
---|
24 | <li>Allows overrides or customizations to grow from simple to complex
|
---|
25 | over time, with no increased complexity to the extension mechanism.</li>
|
---|
26 | <li>Plug-ins can be moved from version to version with an upgraded
|
---|
27 | toolkit simply by unzipping again, or by copying the directory from
|
---|
28 | one install to another; there is no need to re-integrate code based
|
---|
29 | on updates to the core processing.</li>
|
---|
30 | <li>Plug-ins can build upon each other. If you like a plug-in provided
|
---|
31 | by one user, simply install that plug-in, and then create your own
|
---|
32 | that builds on that extension. The two plug-ins can then be distributed
|
---|
33 | to your team as a unit, or you can even share your own extensions
|
---|
34 | with the original provider.</li>
|
---|
35 | </ul></p></section>
|
---|
36 | </refbody>
|
---|
37 | </reference>
|
---|
38 | <?Pub *0000002083?>
|
---|