Difference between revisions of "PluginsForPrompt"
From Protege Wiki
Line 10: | Line 10: | ||
* [http://protegewiki.stanford.edu/images/8/82/Prompt_Create_Algorithm_Plugin.pdf Creating an algorithm plugin] | * [http://protegewiki.stanford.edu/images/8/82/Prompt_Create_Algorithm_Plugin.pdf Creating an algorithm plugin] | ||
* [http://protegewiki.stanford.edu/images/b/b9/Prompt_Create_MappingUI_Plugin.pdf Creating a mapping UI plugin] | * [http://protegewiki.stanford.edu/images/b/b9/Prompt_Create_MappingUI_Plugin.pdf Creating a mapping UI plugin] | ||
− | + | ||
− | * Getting source code for Prompt and the example plugins | + | |
+ | == Contributing a Prompt plugin to be included in the Protege distribution == | ||
+ | |||
+ | If you have developed a Prompt plugin, we encourage you to submit it for the distribution with Protege installation. Here are the steps: | ||
+ | |||
+ | *[http://protege.stanford.edu/support.php Contact the Protege team] and submit a zip file with your plugin | ||
+ | |||
+ | * The zip file should have the following structure: | ||
+ | ** Top directory: <code>yourPlugin</code> | ||
+ | ** Under the <code>yourPlugin</code> directory, create one directory for the deliverable: <code>yourPlugin/org.example.yourPlugin/</code>. This directory should contain everything that is required for the deliverable to operate properly so that the build script can simply grab the contents of one directory, rather than grabbing JAR files from multiple places. | ||
+ | ** If you want to store the source code on the Protege Subversion server, there should also be: <code>yourPlugin/lib/</code> This "lib" directory should exist only if we are storing the source code for a particular Prompt plug-in and should contain all the 3rd party JAR files necessary for the source code to compile. | ||
+ | ** If you want to store the source code on the Protege SVN server, there should also be a directory <code>yourPlugin/src/</code> This "src" directory should only exist if we are storing the source code for a particular Prompt plug-in. The META-INF directory should be under the src directory. | ||
+ | |||
+ | So, once your plugin is uploaded to the Protege SVN, there will be the following structure: | ||
+ | http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin | ||
+ | http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/org.example.yourPluginName/ | ||
+ | http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/lib (only if you are storing the source code and there are third-party libraries) | ||
+ | http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/src (only if you are storing the source code) | ||
+ | |||
+ | |||
+ | |||
+ | == Getting source code for Prompt and the example plugins == |
Revision as of 15:45, July 23, 2014
Contents
Developing plugins for Prompt
Plugin support in Prompt
Similar to Protege, PROMPT supports a plugin framework where developers and researchers can extend both the algorithm functionality of Prompt as well as parts of the user interface. Currently, the framework only supports plugins for merge/mapping algorithms, UI extensions for both the merge and mapping interfaces, and finally an extension to PromptDiff to allow developers to save the calculated operations in different formats. Other extension points are planned for the future.
How to create a plugin
Contributing a Prompt plugin to be included in the Protege distribution
If you have developed a Prompt plugin, we encourage you to submit it for the distribution with Protege installation. Here are the steps:
- Contact the Protege team and submit a zip file with your plugin
- The zip file should have the following structure:
- Top directory:
yourPlugin
- Under the
yourPlugin
directory, create one directory for the deliverable:yourPlugin/org.example.yourPlugin/
. This directory should contain everything that is required for the deliverable to operate properly so that the build script can simply grab the contents of one directory, rather than grabbing JAR files from multiple places. - If you want to store the source code on the Protege Subversion server, there should also be:
yourPlugin/lib/
This "lib" directory should exist only if we are storing the source code for a particular Prompt plug-in and should contain all the 3rd party JAR files necessary for the source code to compile. - If you want to store the source code on the Protege SVN server, there should also be a directory
yourPlugin/src/
This "src" directory should only exist if we are storing the source code for a particular Prompt plug-in. The META-INF directory should be under the src directory.
- Top directory:
So, once your plugin is uploaded to the Protege SVN, there will be the following structure:
http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/org.example.yourPluginName/ http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/lib (only if you are storing the source code and there are third-party libraries) http://smi-protege.stanford.edu/svn/prompt/trunk/plugins/yourPlugin/src (only if you are storing the source code)