# Create plug-in architecture

DITA Open Toolkit 1.2 and above provides a new function to help developers create new plug-ins for DITA Open Toolkit.

## How to create a new plug-in

The developer can create plug-ins for DITA Open Toolkit and provide users to use it. SeeCreate new plug-in for detailed information.

## Extension point

The following table lists the extension points which can be extended by your plug-ins. You need to specify the extension points in your plugin.xml file.

Table 1. Table of extension point
Extension point | Description | Location | Behavior
--- | --- | --- | ---
dita.specialization.catalog | It points where to provide catalog information for your plug-ins. | catalog-dita_template.xml | `org.dita.dost.platform.InsertAction` It inserts the content of the file that you provide into catalog-dita.xml. The provided file must be xml and the root element is not to be inserted into extension point.
dita.conductor.lib.import | It points where to import your own built Java library and to make it available for the transformation process. | conductor_template.xml | `org.dita.dost.platform.ImportAction` It imports the Java library that is built and provided into the generated `conductor.xml`.
dita.conductor.target | It points where to provide your own ant script targets for transformation. | conductor_template.xml | `org.dita.dost.platform.InsertAction` It inserts the content of the file that you provide into `conductor.xml`. The provided file must be xml and the root element is not to be inserted into extension point.
dita.xsl.fo | It points where to provide your extension xsl code of fo transformation. | dita2fo-shell_template.xml | `org.dita.dost.platform.ImportAction` It imports the xsl file that you provide into the generated `dita2fo-shell.xsl`.
dita.xsl.rtf | It points where to provide your extension xsl code of fo transformation. | dita2rtf_template.xml | `org.dita.dost.platform.ImportAction` It imports the xsl file that you provide into the generated `dita2rtf.xsl` .
dita.xsl.xhtml | It points where to provide your extension xsl code of fo transformation. | dita2xhtml_template.xml | `org.dita.dost.platform.ImportAction` It imports the xsl file that you provide into the generated `dita2xhtml.xsl`.
dita.xsl.docbook | It points where to provide your extension xsl code of fo transformation. | dita2docbook_template.xml | `org.dita.dost.platform.ImportAction` It imports the xsl file that you provide into the generated `dita2docbook.xsl`.