Protege5 5 setup for GO Eds
Redirect to:
About this documentation
These instructions were done on Mac OS.
Protege version
As of July 2019, GO Ontology Editors are using Protege version 5.5.0
Download and install Protege
- Get Protege from protege.stanford.edu
- Unzip and move the Protege app to your
Applications
folder. - See Install_Protege5_Mac for more instructions and troubleshooting common problems.
Fix memory settings
Protege needs at least 4G of RAM to cope with the GO, ideally use 12G or 16G if your machine can handle it.
- If launching from ./run.command, edit run.command to jre/bin/java -Xmx6000M. (Is anybody doing this?)
- If running from Protege.app on a mac, open the /Applications/Protege-5.5.0/Protégé.app/Contents/info.plist file
- Below the line:
<string>-Xss16M</string>
- Insert another line:
<string>-Xmx12G</string>
- Below the line:
Fix Deprecate Entity functionality
There is a bug in the Deprecate Entity functionality - it adds OBSOLETE
rather than OBSOLETE.
in front of (will be fixed at the next Protege release). To fix:
- Edit the /Applications/Protege-5.5.0/Protégé.app/Contents/Java/conf/deprecation/go.yaml file (inside the Protege App – access it with "Show Package Contents" by Ctrl + Clicking on the Protege Mac App).
- Change line 10 from
annotationValuePrefix: OBSOLETE
toannotationValuePrefix: OBSOLETE.
Configuring layout
Adding Views as Windows or as Tabs
- Go to
Windows
>View
> Select the view you want to insert in the Protege layout. - The mouse pointer will have a small black target icon above it.
Adding a view as a new window
- Mouse-over the window you want to add a new window to, until you see a blue rectangle splitting the window approximately in half, and click to drop the window there.
Adding a view as a new tab
- Mouse-over the middle area of the window you want to add a new tab to, until you see a large blue rectangle covering the entire window to which you want to add a tab, and click to drop the window there.
The following tabs are sufficient for GO work:
- Active ontology
- Entities (which also contains tabs for object properties and annotation properties by default)
- DL query
- OBO Annotation (May not need - looks like all the functionality has been added in the 'Annotations' panel. However if you are used to this plugin you can install it). Can be obtained from
File
>Check for Plugins
- If you have had the OBO Annotation plugin installed in a previous version of Protégé, you must first remove the old Tab from the layout. Click on the x at the top right corner to remove the window or tab. Then add it where you want it using the instructions above for “Adding Views as Windows or as Tabs".
- Note that the OBO Annotation plugin may not work the first time. After installing the OBO Annotation plugin, close Protege, reopen, and add OBO Annotation view."
- Note that the OBO Annotation plugin also contains the Obsoletion functionality (Edit > Make entity obsolete)
- The layout, id ranges (contained in the file: go-ontology/src/ontology/go-idranges.owl), user name and date_created parameters should be kept from the previous version. Please check that all parameters are correct before starting to use Protege to edit the ontology.
- Protege has a highly configurable layout and a plugin architecture. You can control which components are visible from the window menu. To insert a view, go to the
Entities
tab, selectingWindow
>Views
>OBO Views
>OBO Annotation
. Drag the black circle that appears to the area where you want it and click. The panel will appear.
- You can remove plugins by clicking on the arrow at the right of the plugin tab.
- Once the layout is to your liking, go to
Windows
>Store current layout
Installing plugins
If some plugins are not available from the Window
>Views
tab, go to File
Check for plugins
. Note: this takes some time. You can see Protege running by looking at the top right corner for the spinning wheel.
The plugin menu will appear, showing available plugins or newer versions of already installed plugins:
Note the checkbox 'Always check for updates on startup'. It is recommended that you uncheck this box, since this notably slows down launching Protege.
- ELK OWL reasoner: Used to compute relationship inferences derived from logical definitions.
- Download from [1] Update 2019-07-10: ELK should now be available from the 'Check for plugins' menu.
- Add them in the Protege plugins directory by dragging and dropping the file:
- To see the directory structure, control-click/right click on the
Protege app
icon, then selectShow Package Contents
and drill down to the directory you want. - The directory structure is
Protege-5.5.0.app/Contents/Java/plugins/
. Note there are two plugins folders. Make sure you use the correct one.
The following plugins can be installed from the Protégé menu
:
- OntoGraph view: This view displays a connected graph of classification (is_a) and other relationship types.
- Both children and parents can be viewed.
- All relations are shown (or at least, many, see screenshot).
- Double click on the
+
sign in the top left corner of each box to expand that part of the ontology. - Mouse over the arrow on an edge to view details about the relation.
- The icon representing logical definitions (LD;
≡
) is shown on edges that have inferences based on LDs. - If terms have logical definitions, those are shown with the icon representing LDs (
≡
). - Full instructions can be found at: https://protegewiki.stanford.edu/wiki/OntoGraf
Instructions for new Protege users
Obtaining your ID range
- Curators and projects are assigned specific GO term ID ranges by senior editors.
- These ID ranges are stored in the file: go-idranges.owl
- NOTE: You should only use IDs within your range.
Setting ID range
- Once you have your assigned ID range, you need to configure Protege so that your ID range is recorded in the Preferences menu. Protege does not read the go-idranges.owl file.
- In the Protege menu, select Preferences.
- In the resulting pop-up window, click on the New Entities tab and set the values as described below.
- In the
Entity IRI
section:Start with:
Specified IRI: http://purl.obolibrary.org/oboFollowed by
/End with:
SelectAuto-generated ID
- In the
Entity Label
section:- Select
Same as label renderer
option
- Select
- In the
Auto-generated ID
section:- Select
Numeric (iterative)
Prefix:
"GO_"Suffix:
leave this blankDigit Count:
"7"Start
andEnd:
see go-idranges.owl. Only paste the number after theGO:
prefix. Also, note that when you paste in your GO ID range, the number will automatically be converted to a standard number, e.g. pasting 0110001 will be converted to 110,001.)- Check the
Remember last ID between Protege sessions
box (Note: You want the ID to be remembered to prevent clashes when working in parallel on branches.)
- Select
WARNING: The ID generator in Protege doesn't overwrite existing IRIs, but it can't cope with the OBO alt_id system - where losing IDs following a merge are stored in annotation properties. This system is problematic for OWL translations as it leads to the loss or IRIs. Without IRIs, this ID generator doesn't know about the IDs and will stomp on them if they fall in the specified ID range. Until this is fixed, ??????
We plan to move to a system in which obsolete classes with these IRIs are created for all alt_ids on OBO to OWL translation.
Setting username and auto-adding creation date
- In the Protege menu, go to
Preferences
>New Entities Metadata
tab - Check
Annotate new entities with creator (user)
box Creator property
Add http://www.geneontology.org/formats/oboInOwl#created_byCreator value
SelectUse user name
- Check
Annotate new entities with creation date/time
box Date property
Add http://www.geneontology.org/formats/oboInOwl#creation_dateDate value format
SelectISO-8601
Configuring User details
- In the Protege menu, go to
Preferences
>User details
User name
SelectUse supplied user name
, and use your GOC identity (see your 'xref' in users.yaml). Enter the initials following GO: in the users.yaml file.
Setting Rendering
(The default settings may be fine, but details are included for reference)
- In the Protege menu, go to
Preferences
>Renderer
Protege allows users to set the annotation property to be used for rendering OWL entities (classes, object properties, annotation properties, individuals) in graphs, trees and text etc. This should be set to rdfs:label
, as follows:
More on rendering. All entities in OWL are identified by an IRI (Internationalized Resource Identifier [2]). Entities also includes annotation properties such as human-readable labels. In the absence of an annotation to annotation property specified as suitable for rendering, the short form of this IRI (the bit following a '#' or a '/') is displayed. Choosing to render with rdfs:label
displays term labels in Protege.
Protege 5.5.0 new features
See Protege wiki - 5.5.0 new features
Review Status
Last reviewed: July 10, 2019