GithubHelp home page GithubHelp logo

protegeproject / protege Goto Github PK

View Code? Open in Web Editor NEW
946.0 79.0 229.0 43.66 MB

Protege Desktop

Home Page: http://protege.stanford.edu

License: Other

Java 99.95% HTML 0.05%
protege protege-desktop ontology owl obo ontology-engineering knowledge-graph knowledge-management java reasoning

protege's Introduction

Protege Desktop

Protege is a free, open-source ontology editor that supports the latest OWL 2.0 standard. Protege has a pluggable architecture, and many plugins for different functionalities are available.

To read more about Protege's features, please visit the Protege home page.

The latest version of Protege can be downloaded from the Protege website, or from github.

If you would like to contribute to the Protege Project please see our contributing guide

The Developer Documentation may be found on the wiki.

Looking for support? Please ask questions on the protege-user or protege-dev mailing lists. If you found a bug or would like to request a feature, you may also use this issue tracker.

Protege is released under the BSD 2-clause license.

Instructions for building from source are available on the the wiki.

protege's People

Contributors

balhoff avatar bdionne avatar csnyulas avatar cthoyt avatar danielostling avatar dependabot[bot] avatar disassem avatar gouttegd avatar hkir-dev avatar jlleitschuh avatar jmkeil avatar johardi avatar jvendetti avatar konradhoeffner avatar mans0954 avatar matthewhorridge avatar mosfet80 avatar nickdrummond avatar nizal-shammry avatar riya24899 avatar saarus72 avatar seanfalconer80 avatar sesuncedu avatar shahimessaid avatar shawntanzk avatar stdotjohn avatar stefborg avatar tsarkov avatar yarikoptic avatar ykazakov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

protege's Issues

Redirect from HTTP to HTTPS doesn't work

Protege 4.3 doesn't seem to load purl.org-based ontologies correctly. For example, the ontology http://purl.org/twc/ontology/frir.owl loads successfully when I load it from a local file, or when I load the redirect target (https://raw.github.com/timrdf/csv2rdf4lod-automation/master/doc/ontology/frir.owl), but for whatever reason, Protege attempts to load the redirect page as RDF directly. This is obviously incorrect, and doesn't seem to work for 302 or 303 redirects.

Is there an aspect of the redirect that I'm missing to make Protege work fine? This is a pretty standard way to create a long-lived URI for ontologies, and it's disappointing that it doesn't seem to work anymore.

Runtime Bug: Menu Builder does not handle OWLReasonerException during newInstance()

I tried to resolve it, but the code you provide here cannot be compiled under java 1.7 or 8, and the code info used in this stack trace belongs to v4.3.0 build 304, which I could not find the respective source codes. The runtime environment is Java 1.7 on Mavericks.

Here is the stack track that might help:

NoClassDefFoundError: org/semanticweb/owl/inference/OWLReasonerException
    java.lang.Class.getDeclaredConstructors0(Native Method)
    java.lang.Class.privateGetDeclaredConstructors(Class.java:2446)
    java.lang.Class.getConstructor0(Class.java:2756)
    java.lang.Class.newInstance0(Class.java:328)
    java.lang.Class.newInstance(Class.java:310)
    org.protege.editor.core.plugin.PluginUtilities.getExtensionObject(PluginUtilities.java:131)
    org.protege.editor.core.plugin.ExtensionInstantiator.instantiate(ExtensionInstantiator.java:74)
    org.protege.editor.core.plugin.AbstractProtegePlugin.newInstance(AbstractProtegePlugin.java:32)
    org.protege.editor.core.ui.menu.MenuActionPluginJPFImpl.newInstance(MenuActionPluginJPFImpl.java:148)
    org.protege.editor.core.ui.menu.MenuActionPluginJPFImpl.newInstance(:31)
    org.protege.editor.core.ui.menu.MenuBuilder.buildInnerMenu(MenuBuilder.java:140)
    org.protege.editor.core.ui.menu.MenuBuilder.addMenu(MenuBuilder.java:95)
    org.protege.editor.core.ui.menu.MenuBuilder.buildCompositeMenu(MenuBuilder.java:115)
    org.protege.editor.core.ui.menu.MenuBuilder.addMenu(MenuBuilder.java:89)
    org.protege.editor.core.ui.menu.MenuBuilder.buildMenu(MenuBuilder.java:78)
    org.protege.editor.core.ui.workspace.WorkspaceFrame.createMenuBar(WorkspaceFrame.java:174)

Protege UI occasionally freezes on Linux

Reported by Tania:

The Protege UI occasionally freezes on Linux with Open Java. Protege still seems to be running (CPU at normal levels), but I can't click on any of the entities, tabs, or menus.

There's a bug in Open Java on Linux distributions (e.g., Ubuntu) with parentless dialogs that will cause this behavior. The workaround is to use another Java implementation, like Oracle Java.

Update (2015.03.11): this bug occurs both with Java 7 from OpenJDK and Oracle. See comments at the end for workarounds. Ideally, use Java 8.

Definition annotations should appear below labels

The BioOntology community uses definition annotations. These are important annotations in this community. Protege currently sorts annotation properties alphabetically, which means definitions may come after all sorts of crud. This property should be treated in a special way (the same way as rdfs:label is) so that it comes after rdfs:label. Ideally, this would be generalised to allow a configurable ordering, but for now it's enough to just support definition.

Reference entities by links in textual values

From user request:

Reference other classes through hyperlinks in definitions. Example:

A [filling restoration - link to class] in which a moldable restorative material is placed directly into or on the tooth. The material then hardens and becomes (essentially) part of the tooth. (Compare with indirect restoration)

Protege 4.3 unresponsive loading small ontology in RDF/Turtle

I have used a small UMLS ontology to troubleshoot this issue (CPTH.ttl). That ontology can be downloaded from here:

http://bioportal.bioontology.org/ontologies/CPTH

Initial test:

  • WebProtege loads the ontology just fine and it only takes a few seconds.
  • Protege 4.3 freezes and seems unresponsive. Looking at the process monitor it seems that it is transferring something over the network. It takes > 1 hour to load this small ontology.

Investigation with lsof shows that protege is getting/sending data to the host hans-moleman.w3.org. With that host Google brings the following related issue:

http://forums.adobe.com/thread/768251

I decide to shutdown my network and retry. The ontology loads instantly in Protege 4.3.

Useful commands:

lsof -U -i | grep JavaAp
tcpdump -A host hans-moleman.w3.org

exception closing the import ontology dialog

This bug has not yet been replicated but the stack trace is reasonable. This is happening during the import ontology dialog and the most likely causes are that the ontology being imported is anonymous or that the importing ontology is in a read-only location and the catalog.xml was not created.

Error 1 Logged at Wed Oct 16 18:13:30 EDT 2013
NullPointerException: null
    org.protege.editor.owl.ui.ontology.imports.OntologyImportsList.willRedirectTotheWrongPlace(OntologyImportsList.java:158)
    org.protege.editor.owl.ui.ontology.imports.OntologyImportsList.handleAdd(OntologyImportsList.java:124)
    org.protege.editor.core.ui.list.MList$2.actionPerformed(MList.java:52)
    org.protege.editor.core.ui.list.MList.handleMouseClick(MList.java:221)
    org.protege.editor.core.ui.list.MList.access$200(MList.java:23)
    org.protege.editor.core.ui.list.MList$6.mouseReleased(MList.java:112)
    java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:290)
    java.awt.Component.processMouseEvent(Component.java:6505)
    javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
    java.awt.Component.processEvent(Component.java:6270)
    java.awt.Container.processEvent(Container.java:2229)
    java.awt.Component.dispatchEventImpl(Component.java:4861)
    java.awt.Container.dispatchEventImpl(Container.java:2287)
    java.awt.Component.dispatchEvent(Component.java:4687)
    java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
    java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
    java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
    java.awt.Container.dispatchEventImpl(Container.java:2273)
    java.awt.Window.dispatchEventImpl(Window.java:2719)
    java.awt.Component.dispatchEvent(Component.java:4687)
    java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
    java.awt.EventQueue.access$200(EventQueue.java:103)
    java.awt.EventQueue$3.run(EventQueue.java:694)
    java.awt.EventQueue$3.run(EventQueue.java:692)
    java.security.AccessController.doPrivileged(Native Method)
    java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
    java.awt.EventQueue$4.run(EventQueue.java:708)
    java.awt.EventQueue$4.run(EventQueue.java:706)
    java.security.AccessController.doPrivileged(Native Method)
    java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
    java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

Improve support for browsing and editing General Concept Inclusion Axioms (GCIs)

From Alan Ruttenberg,

I routinely have comments about GCIs being missed when browsing in protege. I would like to request that to remedy this, when browsing a class or property, there is a indication that there are GCIs and a link to view them.

An alternative would be to have another section in the class description view showing any GCIs using the focused term.

Of the two possibilities I favor the latter.

Fresh axiom location

Protege currently puts new axioms in the active ontology of an imports closure. For a given entity, and the notion of an entity frame that we currently have, we could look to see where existing axioms for the frame are and use that to guide us at to which ontology fresh axioms for the frame should be. This comes after chatting with Janna and David from the EBI.

Protege Common – Maven Compile Error (Maven 3.2.1 Java 1.7)

Here is the error occurs when maven tries to compile Protoge Common, seems because of target jvm which is set to 1.7:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project org.protege.common: Fatal error compiling: invalid target release: 1.7 -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project org.protege.common: Fatal error compiling
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:108)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:116)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:361)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:213)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:157)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Fatal error compiling
    at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:695)
    at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:118)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:133)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
    ... 19 more
Caused by: org.codehaus.plexus.compiler.CompilerException: invalid target release: 1.7
    at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:191)
    at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:170)
    at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:684)
    ... 22 more
Caused by: java.lang.IllegalArgumentException: invalid target release: 1.7
    at com.sun.tools.javac.main.RecognizedOptions$GrumpyHelper.error(RecognizedOptions.java:75)
    at com.sun.tools.javac.main.RecognizedOptions$14.process(RecognizedOptions.java:380)
    at com.sun.tools.javac.api.JavacTool.processOptions(JavacTool.java:247)
    at com.sun.tools.javac.api.JavacTool.getTask(JavacTool.java:207)
    at com.sun.tools.javac.api.JavacTool.getTask(JavacTool.java:53)
    at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:115)
    ... 24 more

Add ability to display axiom annotations inline

At the moment there is no way to view axiom annotations inline. One must click on the "@" symbol in the frame views. This is a pain. It would be better to have an option to display inline axiom annotations.

Cannot install protégé 5.0_beta on Linux Ubuntu 14.04

1-I have tried to run on the terminal the run .sh (cmd)
I get a command not found even if I changed the directory (cd Documents)

2- If i double-click on run.sh that I have extracted to my document. I get a prompt mentionning "could not open" Archive type not supported.

Can you help me?
Regards,
Dominique

Bug ..getting error . while clicking OWLviz

getting two error

when I click on to ....... .reasoner->Fect++..
getting

Error 2 Logged at Mon Feb 24 15:31:58 IST 2014
ReasonerException: uk.ac.manchester.cs.factplusplus.owlapi.FaCTPlusPlusReasonerException: uk.ac.manchester.cs.factplusplus.InconsistentOntologyException: FaCT++.Kernel: inconsistent ontology
org.protege.editor.owl.model.inference.OWLReasonerManagerImpl$1.run(OWLReasonerManagerImpl.java:259)

java.lang.Thread.run(Unknown Source)

  1. when I open my .owl sheet and click on owlviz tab in preference menu
    I get

Error 3 Logged at Mon Feb 24 15:33:55 IST 2014
ReasonerException: uk.ac.manchester.cs.factplusplus.owlapi.FaCTPlusPlusReasonerException: uk.ac.manchester.cs.factplusplus.InconsistentOntologyException: FaCT++.Kernel: inconsistent ontology
org.protege.editor.owl.model.inference.OWLReasonerManagerImpl$1.run(OWLReasonerManagerImpl.java:259)

java.lang.Thread.run(Unknown Source)

Error 4 Logged at Mon Feb 24 15:34:21 IST 2014
TokenMgrError: Lexical error at line 1, column 58. Encountered: "." (46), after : ""
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParserTokenManager.getNextToken(DotParserTokenManager.java:626)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.jj_ntk(DotParser.java:450)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.attr_stmt(DotParser.java:296)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.stmt(DotParser.java:132)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.graph(DotParser.java:107)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.start(DotParser.java:72)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.dotparser.DotParser.parse(DotParser.java:25)
uk.ac.man.cs.mig.util.graph.layout.dotlayoutengine.DotGraphLayoutEngine.layoutGraph(DotGraphLayoutEngine.java:113)
uk.ac.man.cs.mig.util.graph.ui.GraphView.revalidateGraph(GraphView.java:308)
uk.ac.man.cs.mig.util.graph.ui.GraphView$4.hierarchyChanged(GraphView.java:156)
java.awt.Component.processHierarchyEvent(Unknown Source)
java.awt.Component.processEvent(Unknown Source)
java.awt.Container.processEvent(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.Component.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Container.addImpl(Unknown Source)
javax.swing.JViewport.setView(Unknown Source)
javax.swing.JScrollPane.setViewportView(Unknown Source)
javax.swing.JScrollPane.(Unknown Source)
javax.swing.JScrollPane.(Unknown Source)
uk.ac.man.cs.mig.util.graph.ui.GraphComponent.(GraphComponent.java:60)
uk.ac.man.cs.mig.coode.owlviz.ui.OWLVizGraphPanel.(OWLVizGraphPanel.java:60)
uk.ac.man.cs.mig.coode.owlviz.ui.OWLVizView.createOWLVizTabUI(OWLVizView.java:143)
uk.ac.man.cs.mig.coode.owlviz.ui.OWLVizView.initialiseClassView(OWLVizView.java:78)
org.protege.editor.owl.ui.view.AbstractOWLClassViewComponent.initialiseView(AbstractOWLClassViewComponent.java:21)
org.protege.editor.owl.ui.view.AbstractOWLSelectionViewComponent.initialiseOWLView(AbstractOWLSelectionViewComponent.java:105)
org.protege.editor.owl.ui.view.AbstractOWLViewComponent.initialise(AbstractOWLViewComponent.java:56)
org.protege.editor.core.ui.view.View.createContent(View.java:390)
org.protege.editor.core.ui.view.View.createUI(View.java:190)
org.protege.editor.core.ui.view.View$1.hierarchyChanged(View.java:120)
java.awt.Component.processHierarchyEvent(Unknown Source)
java.awt.Component.processEvent(Unknown Source)
java.awt.Container.processEvent(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.Component.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Container.createHierarchyEvents(Unknown Source)
java.awt.Component.show(Unknown Source)
java.awt.Component.show(Unknown Source)
java.awt.Component.setVisible(Unknown Source)
javax.swing.JComponent.setVisible(Unknown Source)
javax.swing.plaf.basic.BasicTabbedPaneUI.setVisibleComponent(Unknown Source)
javax.swing.plaf.basic.BasicTabbedPaneUI$TabbedPaneLayout.layoutContainer(Unknown Source)
java.awt.Container.layout(Unknown Source)
java.awt.Container.doLayout(Unknown Source)
java.awt.Container.validateTree(Unknown Source)
java.awt.Container.validateTree(Unknown Source)
java.awt.Container.validate(Unknown Source)
javax.swing.RepaintManager.validateInvalidComponents(Unknown Source)
javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
java.awt.event.InvocationEvent.dispatch(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)

java.awt.EventDispatchThread.run(Unknown Source)

..please help me out
Thank you !

Add support for change tracking

From User request:

It would be great to have a "track changes" function, similar to what is in Microsoft Word, for editing annotations. It would make it easier for others to review work done collaboratively.

It would be wonderful if the Protégé tools could store the identity of whoever made changes. For instance, we now put into an Editor Note things like “User X 1/1/2014: made definition clearer.” Tracking this automatically would be a great timesaver.

Individuals Tab shows the Individuals List rather than the Members List

The individuals tab contains the class hierarchy on the left hand side. The class selection should filter the individuals that are shown in the list. However, the list is currently the IndividualsList view which shows all individuals in the ontology. The actual view should be the MembersList.

"Initializing property instance data structures" progress message isn't cleared after reasoning.

See the issue description from the mailing list below. It's not clear if this is specific to HermiT or not.

Message: "Initializing property instance data structures"

The process appears to complete (by the state of the status bar) yet the window stays up with only a cancel button. Press the cancel button, I get:

"Cancelled. Waiting for reasoner to terminate..."

This window has a greyed-out cancel button. The window itself just sits there. I have to close the window with the OS-provided close window facility (click on upper left red button on Mac). The window departs and Protege says the reasoner is active and everything seems normal. Is it?

Do I have something configured incorrectly? Should I just be happy with what I've got?

Class members frame section should show direct instances of selected class

From an email by Pavel Klinov which was posted to the mailing list:

I've noticed that when a user clicks on a class (on the Classes tab)
and if the option "Class members" is set in the "Displayed Inferences"
configuration, Protege 4.3 issues a call
OWLReasoner.getInstances(class_expression, *false*) to the reasoner.

This means that all inferred instances, direct and indirect, are
requested. I wonder if that is really necessary when browsing the
class hierarchy since it can quickly get very slow on
ontologies with large ABox (or even large TBox, if the reasoner first
goes through all subclasses).

I searched the archive and found this:

https://mailman.stanford.edu/pipermail/p4-feedback/2010-October/003321.html

so it seems like the problem of retrieving indirect instances has been
recognized. So perhaps it's better to always request only direct ones?
Or at least converge to some consistent behaviour.

Continue button sometimes disabled in the 'Export Inferred Axioms' wizard

We had reports on the mailing list that users cannot export the inferred axioms because the Continue button on the page for specifying the ontology IRI is disabled:
http://protege-project.136.n4.nabble.com/export-axioms-dialog-had-grey-Continue-button-td4660442.html

This bug was reported before, and it seems that it was caused by an expected "." (dot) in the ontology IRI (which is wrong):
http://protege-project.136.n4.nabble.com/Export-Inferred-axioms-as-ontology-broken-again-td4655720.html

We should check that code, and make sure it does not make unnecessary assumptions.

Protege run scripts fail for users with only a JRE installed (no JDK)

After publishing the first Protege 5.0 beta build, an end-user reported the following error on the mailing list when trying to launch Protege with the run.bat file:

C:\Software\Protege_5.0_beta>run.bat

C:\Software\Protege_5.0_beta>java -server -Dlog4j.configuration=file:log4j.xml -
DentityExpansionLimit=100000000 -Dfile.encoding=utf-8 -Dorg.protege.plugin.dir=p
lugins -classpath bin/felix.jar;bin/ProtegeLauncher.jar org.protege.osgi.framewo
rk.LauncherError: missing `server' JVM at `C:\Program Files(x86)\Java\jre7\bin\server\jvm.
dll'.

Please install or use the JRE or JDK that contains these missing components.

The error occurs because we use the Java "-server" option in the run scripts, which requires a JDK. Some users only have a JRE installed.

The option was originally added based on a claim that it would give better performance for long-lived applications, but there was no noticeable difference with Protege. The option should be removed so that the Protege run scripts will still execute on systems with only a JRE installed.

Protege 4.3 on Linux Ubuntu

Over the weekend I went through the Pizza Ontology. I used the 4.0… version of desktop Protégé for Linux. When I got to page 80 where you define a calorie count over which you will consider the pizza to be a high calorie pizza, I was not able to get Protégé to accept the integer[>=600] part of the expression. The red line went underneath the word integer. I tried it as capital and also tried using the auto-complete feature.

For this reason I didn’t get beyond this point. I did install protégé 4.3 before giving up. I also downloaded Pizza.owl as a complete ontology but the version I found on the web didn’t include the high-calorie object along with the expression so I couldn’t find an example of it done correctly.

I thought I would bring my question to the group and see if anyone can give guidance.

I used this file…
ProtegeOWLTutorialP4_v1_3.pdf

This is the step I could not complete…
4. In the Class expression editor', typehasCaloricContentValue some integer[>= 400]' and click `OK'
screenshot 2

Auto-update throws exception when version number contains characters other than digits and period

When I start Protege 4, I get an exception from the auto-updater (see stack trace below). It appears to me that this is exception is thrown when parsing the version number "2.3.0-nehta_export-SNAPSHOT" in the following plugin properties file:
http://aehrc.com/software/snorocket/update-owlapi3.properties


NumberFormatException: For input string: "0-nehta_export-SNAPSHOT"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
java.lang.Integer.parseInt(Integer.java:492)
java.lang.Integer.parseInt(Integer.java:527)
org.osgi.framework.Version.(Version.java:135)
org.protege.editor.core.update.PluginInfoDocument.(PluginInfoDocument.java:44)
org.protege.editor.core.update.UpdateChecker.run(UpdateChecker.java:32)
org.protege.editor.core.update.PluginRegistryImpl$Calculator.visit(PluginRegistryImpl.java:156)
org.protege.editor.core.update.PluginRegistryImpl$Calculator.readRegistry(PluginRegistryImpl.java:208)
org.protege.editor.core.update.PluginRegistryImpl$Calculator.visit(PluginRegistryImpl.java:185)
org.protege.editor.core.update.PluginRegistryImpl$Calculator.run(PluginRegistryImpl.java:109)
org.protege.editor.core.update.PluginRegistryImpl.reload(PluginRegistryImpl.java:83)
org.protege.editor.core.update.PluginRegistryImpl.getAvailableDownloads(PluginRegistryImpl.java:88)
org.protege.editor.core.update.PluginManager$3.run(PluginManager.java:164)

java.lang.Thread.run(Thread.java:724)

FolderGroupManager sometimes throws NullPointerException on file open

User reported this exception on the mailing list in early February:

java.lang.NullPointerException at org.protege.editor.owl.model.library.folder.FolderGroupManager.examineDiskEntries(FolderGroupManager.java:256)

Asked user for more details about how to reproduce, but they didn't respond. Was not able to reproduce at Stanford. Timothy added some defensive code (see this commit).

Another user reported the same exception on the mailing list April 14th (see this post). Built a Protege distribution from sources and asked user to download and report back if the issue is fixed.

add a Protege option to reject ontologies with missing declarations

Ontologies with missing declarations are a recurring subject. Protege should have a user option that would let users state they want to fail to parse such ontologies.

This should be easy to do. There is an OWL api flag supporting this behavior. Find the right insertion point and add a couple of lines.

-Timothy

Updates tab in Automatic Update dialog displays trailing '.' on version number

Noticed that the Updates tab in the Automatic Update dialog shows an unnecessary trailing '.' character on version numbers. For example, the "Current version" column displays "1.0.2." for the code generation plug-in, instead of just "1.0.2". This happens for plug-ins that have a major, minor, and micro portion to a version number, but no qualifier.

autoupdate incorrect current version

RuntimeException thrown by loadOntologyFromOntologyDocument

Open

    http://www.ontologydesignpatterns.org/cp/owl/actingfor.owl

and then

    http://ontologydesignpatterns.org/ekp/Airline.owl

in the same Protege window. You will then see the exception

java.lang.RuntimeException: java.lang.RuntimeException: org.semanticweb.owlapi.model.OWLOntologyRenameException: Could not rename ontology. An ontology with this ID already exists: OntologyID(OntologyIRI())
    at org.protege.owlapi.model.ProtegeOWLOntologyManager.callWithWriteLockUnchecked(ProtegeOWLOntologyManager.java:193)
    at org.protege.owlapi.model.ProtegeOWLOntologyManager.applyChange(ProtegeOWLOntologyManager.java:137)
    at org.coode.owlapi.rdfxml.parser.OWLRDFConsumer.applyChange(OWLRDFConsumer.java:974)
    at org.coode.owlapi.rdfxml.parser.TypeOntologyHandler.handleTriple(TypeOntologyHandler.java:72)
    at org.coode.owlapi.rdfxml.parser.OWLRDFConsumer.handleStreaming(OWLRDFConsumer.java:1739)
    at org.coode.owlapi.rdfxml.parser.OWLRDFConsumer.statementWithResourceValue(OWLRDFConsumer.java:1714)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.statementWithResourceValue(RDFParser.java:577)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser$NodeElement.startElement(RDFParser.java:861)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser$NodeElementList.startElement(RDFParser.java:787)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.startElement(RDFParser.java:281)
    at org.coode.owlapi.rdfxml.parser.RDFXMLParser$1.startElement(RDFXMLParser.java:91)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:506)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(XMLDTDValidator.java:766)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:353)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2717)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:607)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:489)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:835)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1210)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:568)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:302)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.parse(RDFParser.java:170)
    at org.coode.owlapi.rdfxml.parser.RDFXMLParser.parse(RDFXMLParser.java:119)
    at uk.ac.manchester.cs.owl.owlapi.ParsableOWLOntologyFactory.loadOWLOntology(ParsableOWLOntologyFactory.java:206)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:906)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:825)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadImports(OWLOntologyManagerImpl.java:1309)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.makeLoadImportRequest(OWLOntologyManagerImpl.java:1339)
    at org.coode.owlapi.rdfxml.parser.TPImportsHandler.handleTriple(TPImportsHandler.java:89)
    at org.coode.owlapi.rdfxml.parser.OWLRDFConsumer.handleStreaming(OWLRDFConsumer.java:1759)
    at org.coode.owlapi.rdfxml.parser.OWLRDFConsumer.statementWithResourceValue(OWLRDFConsumer.java:1714)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.statementWithResourceValue(RDFParser.java:577)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser$EmptyPropertyElement.startElement(RDFParser.java:1049)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser$PropertyElementList.startElement(RDFParser.java:920)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.startElement(RDFParser.java:281)
    at org.coode.owlapi.rdfxml.parser.RDFXMLParser$1.startElement(RDFXMLParser.java:91)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:506)
    at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:353)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2717)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:607)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:489)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:835)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1210)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:568)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:302)
    at org.semanticweb.owlapi.rdf.syntax.RDFParser.parse(RDFParser.java:170)
    at org.coode.owlapi.rdfxml.parser.RDFXMLParser.parse(RDFXMLParser.java:119)
    at uk.ac.manchester.cs.owl.owlapi.ParsableOWLOntologyFactory.loadOWLOntology(ParsableOWLOntologyFactory.java:206)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:906)
    at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntologyFromOntologyDocument(OWLOntologyManagerImpl.java:843)
    at se.liu.ida.xd.specialization.SpecializationData.getInputOntologyPattern(SpecializationData.java:236)
    at se.liu.ida.xd.specialization.SpecializationData.getInputOntologyPattern(SpecializationData.java:212)
    at se.liu.ida.xd.specialization.SpecializationData.setHiddenInputOntology(SpecializationData.java:112)
    at se.liu.ida.xd.specialization.SpecializationData.(SpecializationData.java:85)
    at se.liu.ida.xd.specialization.SpecializationWizard.(SpecializationWizard.java:56)
    at se.liu.ida.xd.specialization.ActionSpecializationDelegate.run(ActionSpecializationDelegate.java:19)
    at se.liu.ida.xd.registry.views.ODPRegistry.actionPerformed(ODPRegistry.java:106)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
    at java.awt.Component.processMouseEvent(Component.java:6505)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3312)
    at java.awt.Component.processEvent(Component.java:6270)
    at java.awt.Container.processEvent(Container.java:2229)
    at java.awt.Component.dispatchEventImpl(Component.java:4861)
    at java.awt.Container.dispatchEventImpl(Container.java:2287)
    at java.awt.Component.dispatchEvent(Component.java:4687)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
    at java.awt.Container.dispatchEventImpl(Container.java:2273)
    at java.awt.Window.dispatchEventImpl(Window.java:2719)
    at java.awt.Component.dispatchEvent(Component.java:4687)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
    at java.awt.EventQueue.access$200(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:694)
    at java.awt.EventQueue$3.run(EventQueue.java:692)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
    at java.awt.EventQueue$4.run(EventQueue.java:708)
    at java.awt.EventQueue$4.run(EventQueue.java:706)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

This is probably happening somehow because they both import

    http://ontologydesignpatterns.org/schemas/cpannotationschema.owl

I will try later to isolate these three ontologies to a location that we have control over.

Protege build actually uses owlapi-3.4.3, not 3.4.10

Contra cd0a34b, org.protege.editor.owl uses owlapi version 3.4.3, not version 3.4.8.

Version 3.4.3 is picked up via

        <dependency>
            <groupId>edu.stanford.protege</groupId>
            <artifactId>protege-owlapi-extensions</artifactId>
            <version>3.2.4</version>
        </dependency>

org.protege.editor.owl cannot build against owlapi 3.4.10, due to SWRLRuleChecker. This class depends on symbols in ManchesterOWLSyntaxEditorParser that are either moved to ManchesterOWLSyntax (RULE), or on methods that are private (consumeToken).

There seems to be several issues relating to methods on this class that aren't public / protected anymore (not to mention the package name changes in 3.5.0-SNAPSHOT). cf.
owlcs/owlapi#115

GenID Exception

Hi there,

we have a problem of not being able to save a particular ontology
http://wikitaaable.loria.fr/index.php/Main_Page#Dumps.

Whenever we try to save (and sometimes load) this particular ontology in Protege we experience the following exception:

Error 6 Logged at Fri Mar 21 17:05:21 CET 2014
IllegalArgumentException: Illegal character in scheme name at index 0: _:genid1
java.net.URI.create(URI.java:859)
org.semanticweb.owlapi.model.IRI.toURI(IRI.java:73)
org.semanticweb.owlapi.util.OntologyIRIShortFormProvider.getShortForm(OntologyIRIShortFormProvider.java:73)
org.protege.editor.owl.ui.renderer.OWLObjectRendererImpl.renderOntology(OWLObjectRendererImpl.java:77)
org.protege.editor.owl.ui.renderer.OWLObjectRendererImpl.render(OWLObjectRendererImpl.java:62)
org.protege.editor.owl.model.cache.OWLObjectRenderingCache.getRendering(OWLObjectRenderingCache.java:86)
org.protege.editor.owl.model.OWLModelManagerImpl.getRendering(OWLModelManagerImpl.java:894)
org.protege.editor.owl.OWLEditorKit.handleSaveAs(OWLEditorKit.java:267)
org.protege.editor.owl.OWLEditorKit.handleSaveAs(OWLEditorKit.java:254)
org.protege.editor.core.ProtegeManager.saveEditorKitAs(ProtegeManager.java:284)
org.protege.editor.core.ui.action.SaveAsAction.actionPerformed(SaveAsAction.java:28)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
java.awt.Component.processMouseEvent(Component.java:6505)
javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
java.awt.Component.processEvent(Component.java:6270)
java.awt.Container.processEvent(Container.java:2229)
java.awt.Component.dispatchEventImpl(Component.java:4861)
java.awt.Container.dispatchEventImpl(Container.java:2287)
java.awt.Component.dispatchEvent(Component.java:4687)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
java.awt.Container.dispatchEventImpl(Container.java:2273)
java.awt.Window.dispatchEventImpl(Window.java:2719)
java.awt.Component.dispatchEvent(Component.java:4687)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
java.awt.EventQueue.access$200(EventQueue.java:103)
java.awt.EventQueue$3.run(EventQueue.java:694)
java.awt.EventQueue$3.run(EventQueue.java:692)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
java.awt.EventQueue$4.run(EventQueue.java:708)
java.awt.EventQueue$4.run(EventQueue.java:706)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)

java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

It seems to be related to an illegal character.
However even if we do not change the original file downloaded from WikiTaaable we should be able to save it because no illegal character should have been inserted hence we did not.
This problem occurs on Windows, Linux, Protege 4.1 and Protege 4.3. Other versions have not been tested.

Any help would be appreciated.

Thank you!

Protege Desktop uninstaller fails with "Win64 not supported" error

Occasionally, users have reported that launching the Protege uninstaller on 64-bit Windows machines results in the following error:

Win64 not supported. The author of the package you are installing did not include support for this platform.

... and the uninstall process fails.

This error occurs when the InstallAnywhere file "iawin64_x64.dll" is missing from the following directory:

<protege-install-dir>/UninstallProtege/resource

The issue is not specific to Protege. Other applications that use InstallAnywhere have reported the same.

The solution is to have the end-user download a copy of iawin64_x64.dll, place it in the directory indicated above, then relaunch the uninstaller. Received confirmation from two end-users that following this process eliminated the error and allowed them to successfully uninstall.

I plan to make this file available for download from the main Protege website in case others encounter the same issue in the future.

The Maven multi module build generates parent.relativePath warnings

Launching the Maven multi module build generates 12 parent.relativePath warnings - two for each of the submodules, e.g.:

[WARNING] Some problems were encountered while building the effective model for
edu.stanford.protege:org.protege.common:bundle:5.0.0-beta-05-SNAPSHOT

[WARNING] 'parent.relativePath' of POM edu.stanford.protege:protege-parent:5.0.0
-beta-05-SNAPSHOT (C:\Projects\GitHub\protege\protege-parent\pom.xml) points at
edu.stanford.protege:aggregator instead of org.sonatype.oss:oss-parent, please v
erify your project structure @ edu.stanford.protege:protege-parent:5.0.0-beta-05
-SNAPSHOT, C:\Projects\GitHub\protege\protege-parent\pom.xml, line 5, column 10

Some research indicates that this is a misleading/bogus warning. Maven uses a default parent relative path set to "..". This is invalid when the parent pom is not the in parent directory (our parent pom is in a sibling directory). Display of these warnings is currently an open/unresolved Maven issue: http://jira.codehaus.org/browse/MNG-5146.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.