NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This page serves as an instructional guide as well as a brief history and and overview about Protege to all non-NCI users. Users are able to download a zipped copy of this public release Protege extenstion extension package, which contain the necessary installation folders. Within each folder, certain file(s) will need to be configured in order to properly run the application. Once configured in the user should be able to run Protege within their own server environment.

...

The Protégé and the extensions are built and expect to run on Java 1.5.

EVS

...

Protégé Extensions

...

As metioned above, the EVS Protégé Extensions are broken into three separate packages. The Explanation server provides classification and explanation functionality. The Protégé server provides access to a central editing project for multiple users. The Protégé client is the end-user application for accessing the Protégé server and editing content.

...

The Explanation Server is used to do classification of the ontology and provide explanations on demand to the Protégé Client GUI. It runs directly against the database, independently of the Protégé Server. The Protégé Server queries the Explanation Server for information when needed and controls requests for classification, so multiple clients cannot try and classify at the same time. The Explanation Server is designed to run in the bash shell on a Linux or Unix computer. Please ensure that the JRE is installed on the machine to run the explanation server.

...

Protégé Server

The Protégé server provides multi-user access to a single ontology stored in a database. It coordinates and controls user activities and resource allocation. It stores a history of user actions for use in tracking changes and resolving conflicts. The server also provides a centralized means of enforcing business rules and configurations upon client applications. EVS has extended the Protégé server to allow tracking of workflow and assigning of editing tasks. The Protege Protégé server is designed to run in the bash shell on a Linux or Unix computer. Please ensure that the JRE is installed on the machine to run the explanation server.

...

Protégé Client

The Protégé client is a java-swing based GUI used for editing an ontology. EVS uses the client to connect to the Protégé server application, allowing multiple editors to share the same ontology. The Protégé client can also be used in standalone mode to edit a single ontology but some of the client-server specific extensions are then disabled. The client is used in standalone mode by managers to perform Prompt comparisons and terminology exports. The Protege Protégé client is designed to run in the bash shell on a Linux or Unix computer or on a Windows computer. The JRE has been set for the Protege Protégé client to run on a Windows machine, however, this JRE folder is not needed for the client residing on the server, the Linux server should have a JRE setup.

...

The instructions below will allow the user to build an environment to match the one used by EVS. Some of the configurations are optional and will be labeled as such. The zip package contains folders for the client, Protege Protégé server and explanation server. All of these should be copied to the Linux/Unix machine where you will be serving ProtegeProtégé. A copy of the client should also reside on a local Windows machine for use in accessing the server data.

...

Any multi-user Protégé server-client configuration requires a metaproject. The server application references this metaproject to determine what ontologies to make available for editing and what users have rights to do various tasks. EVS has made available an example metaproject that includes all the privileges and groups required for the NCI edit tab. A base metaproject is located in the ProtegeProtégé.Server-1.4.0.267/examples/server folder.

...

Before the vocabulary can be accessed by the server it must be loaded into a project using the Protege Protégé Client GUI. The OWL source is loaded first as a Protege Protégé file project and then converted to a database project. Steps to load a new Protege Protégé project and convert in to a database project are below. The Protege Protégé application will create the necessary tables in the database. You, or course, need to have a database ready and able to be written to before you start the load.

...

Files to configure in the Protege Protégé client folder:

run_protege.sh (Linux)

...

Used only for windows machines. All that needs to be done here is to set MAX_MEMORY to 700MB. An important note is that if you are using the client from a Windows machine, be sure to insert a copy of a JRE folder within the Protege Protégé client folder. The batch file will not run unless it can detect a JRE.

...

The Explanation Server can connect with either the Protege Protégé database or to a raw OWL file. Files to configure:

start_explanation_server.sh

  1. Allocate a decent max_heap_size. (default is set to 12gigs, however, less memory can be used for test machines (i.e. 8GB for QA)).
  2. Enusre that the explanation server is pointing to the correct Protege.Server folder: (protege_install=/path/to/new/Protege server folder). This allows the Explanation server to use jars found in the Protege.Server folder.
  3. Make sure the path to the java server is correct (replace <PATH TO JRE BIN> with the actual jre/bin/java.exe location.
  4. The command to connect the explanation server to a database project: './start_explanation_server.sh --port <PORT> --protege-standalone /path/to/databaseProject.pprj'. The command to connect to a raw OWL file:  *'./sh start_explanation_server.sh --urls file:///home/user/path/to/file.owl'*
  5. The Explanation Server is ready when you see "Jena, Classification, and Extracting' as well as a final
    'Server started, listening on port ....' message. The Explanation Server should be allowed to start completely before starting the Protege Server.

...

Protégé Server Folder

run_rmiregistry.sh
  1. JAVA_HOME must be set in the script.
  2. The very last line has a port number that will need to match the Protege Protégé Server: $JAVA_PATH/rmiregistry <PORT> &

...

The codegen.seed number should be set at a figure higher than the highest concept number in your vocabulary. The codegen prefix and codegen.suffix values are optional. The optional codegen delimeter will set the character to be inserted between prefix and code or code and suffix. Example: prefix=B, delimiter=-, suffix=cs, seed=100. The first code generated will be B-100-cs. A 'codegen.dat' file will then be generated within the Protege Protégé server folder and will be updated to "100" and will iterate the concept code number from that point.

...

Verify correct database information for saving to the evs_history table. This information should match the PromptNCIplugin info residing in the Protege Protégé client folder:

nci.prompt.ipAddress=<hostname>:<port>
nci.prompt.dataBaseName=<db name>
nci.prompt.dbEVSHistoryTable=<tablename>
nci.prompt.userName=<username>
nci.prompt.password=<password>

...

Verify that the protege.properties file points to the correct Protege Protégé server as well as the URL for the explanation server:

...

The first line should be the Protege Protégé server hostname with the desired RMI port number. The second line is read by the explanation server, and should be the same address or hostname as the Protege Protégé server. However, the port number will be different. The backslashes in the hostname represent escape character in Linux for the colons.

To edit, use your editor to open the properties file. Insert proper server hostname and port number values, save, and exit the properties file. Nothing else should be modified in this file.

...

Protégé Database Project/Configuration Files

All files should now be configured and ready to be used. At this point, a new database project will need to be created and configured for the Protege Protégé server to connect with the database. Follow the Instructions for creating and configuring a new Protege Protégé database project.

Loading the OWL file into a Project

Open the Protege Protégé client, run 'run_protege.sh', and click on "Create New Project". Select OWL/RDF File, and check "Create from existing source". Click "Next". A window will display requesting the address of the source OWL file. Navigate to where the OWL file is stored and click "Finish". The OWL file may take some time to load into the client, dpending on the file size.

...

Click on "User" in the list to the left. Examine the existing users by clicking on them. Make a copy of the _test_editor user and give it a new name and password. Make note of this information for use in logging into the Protege Protégé Server later.

Click "File", "Save Project" then "Exit".

'ncitab.xml' File

The Protege Protégé Client also contains an ncitab.xml file which is used to populate drop down menus with NCI-specific values in the Protege Protégé Client also provides other ontology-specific configurations. Towards the bottom of the file, curatorial authorities can be assigned to specific editors.

...