Difference between revisions of "PluginsForPrompt"

From Protege Wiki
Jump to: navigation, search
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]
* Contributing a Prompt plugin to be included in the Protege distribution
+
 
* 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

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:

  • 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.

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