Software Engineering

From Protege Wiki
Jump to: navigation, search

Topic - Software Engineering

Some coding doesn't justify setting up an entire Java build environment and/or requires immediate feedback. The Beanshell view allows programmatic access from within Protege for querying and manipulating ontologies, or even interacting with the UI. For more information see the Beanshell website.

The ClojureTab uses the Clojure programming language for simple programming in the Protege environment, on-the-fly debugging, and storing programs in Protege projects. Contains: 1. Integrated development environment for Clojure language ( 2. Protege API for Clojure language 3. Rule engine and Expert system shell rete4frames ( 4. Algorithms visual development environment

CompGuide Editor
CompGuide Editor is a tool used for the acquisition of Computer-Interpretable Guidelines in the CompGuide model for Clinical Practice Guidelines that also allows the editing of previously encoded guidelines. The Editor guides the users throughout the process of guideline encoding and does not require prociency in any programming language.

The DroolsTab uses the open source geo-information system Java library OpenMap and the open source Java RETE rule engine Drools to facilitate visual authoring of complex spatial process simulation scenarios and general rule-based authoring. The Groovy and Clojure languages can be used for authoring auxiliary pieces of code and scripts. The distribution includes several demos of spatial simulation in the sea, air, and ground environments, including one example using Edvin Boehn's KML Framework.

Expert System Shell r4f-pro
Integrated Development Environment for rete4frames rule engine and expert system shell based on Protege-3.5 ontology editor supplemented with visual creation of algorithms. It combines two well-known paradigms of software development: algorithms for strictly defined processes and rules for fuzzy, fragmentarily defined processes and phenomenons.
[[Image:|thumb|170px|center]] IDESSP
Integrated development environment for visual creation and simulation of spatial processes.

Based on ontology editor Protege-frames, GIS library OpenMap and rule engine and expert system shell rete4frames. Uses concept of "Scenario" for describing spatial processes and programming language Clojure for executive parts of rules and auxilliary scripts. Includes general IDE for Clojure.

[[Image:|thumb|170px|center]] JSave
JSave can be used to generate Java class definition stubs for Protege-Frames classes.
The protégé MESAM plugin is a semi-automatic tool for defining a consistant OWL merged model composed of a generic model, a specific model and mapping between them.
OWL2ToRDB screen1.PNG
OWL2ToRDB is a Protégé plugin for transforming OWL 2 ontology into relational database.
OntoDebug is a free and open-source interactive ontology debugger plugin for Protégé to resolve and repair inconsistent and incoherent ontologies.
[[Image:|thumb|170px|center]] OntologyBeanGenerator
The ontology bean generator plugin is a Protégé Tab widget which generates java files representing an ontology that can be used with the JADE environment. With the beangenerator tool you can generate FIPA/JADE compliant ontologies from RDF(S), XML and Protégé projects.

This plugin works with both Protégé frames and Protégé OWL ontologies.

OpenMap Tab Plugin
Protege-Frames plug-in for visualizing geodata and creating GIS applications
          Uses GIS library OpenMap (
P4 CodeGeneration PizzaOntology.png
Protege-OWL Code Generator
Allows users to generate Java code from an ontology.
[[Image:|thumb|170px|center]] Protege-nrepl
This plugin enables fully programmatic access and manipulation of the data structures that Protege is displaying. It does this by embedding an nREPL server launched using the language Clojure. nREPL clients (essentially any IDE capable for Clojure) can access this server to add or remove entities, change views or do anything else they desire.

Although not intrinsically linked to it, Protege-NREPL was original written for use with the Tawny-OWL environment. By combining the two Protege can be used to visualize live the current state of an ontology written in Tawny-OWL

This plugin goal is to help ontologists searching for relevant vocabularies in the Linked Open Data (LOV) catalogue, for easing the development of ontologies by reusing existing vocabularies at low fine grained level. The tool helps to improve the modeling and reuse of ontologies used in the LOD cloud.
Snow Owl
Snow Owl is a free SNOMED CT browser and authoring tool integrating Protégé.
[[Image:|thumb|170px|center]] UML Backend
The UML back-end plug-in provides an import and export mechanism between the Protege knowledge model and the object-oriented modeling language UML.
[[Image:|thumb|170px|center]] Watson Search Preview
This plug-in shows a preview of a search in Watson. Whenever a class is selected, the Watson Search Plugin searches for that term and provides the top results. This is more a proof of concept or an example than a real plugin. If you are searching for something more powerful, see
[[Image:|thumb|170px|center]] XMI Backend
XMI is a standard format for metadata exchange supported by OMG, the group that is responsible for standards such as UML, CORBA, and the Common Warehouse Metamodel. If you are a looking for alternative mechanisms to access Protege knowledge models (ontologies) from your application, data warehouse, or metadata repository, this back-end might be interesting for you.