Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-owl] NCI Thesaurus load problems (NOT MEMORY PROBLEM)

Tania Tudorache tudorache at stanford.edu
Tue Sep 12 20:06:07 PDT 2006


Hi Julia,

If you will use the OWL Database backend, you will still be able to run 
the reasoner. However, when the results of the classification come back 
from the reasoner, a copy of the classified ontology is done in memory, 
so if you do not have enough heap allocated, you may still have memory 
problems. We are working on a fix for this problem.

However, for editing large ontologies, it is better to use the OWL 
Database Backend, because not everything is loaded into memory, but only 
parts of the ontology. In this way, you will not have memory problems.

I hope this helps.
Tania

jdmitrie at liacs.nl wrote:

>Hello Tania,
>
>You are asking  me, why I am not converting the Thesaurus.owl in the
>database format,
>it is because I am not planning to change Thesaurus ( I will also not
>working with it from Protege), what I will is only
>querying it from my application, and, as I have written long time ago, I am
>working with different ontologies and Thesaurus is only the one which
>contains
>interesting information. The idea is that I use different ontologies in
>the same
>format.
>
>But ok, if i convert it to database format then I have to work with
>OWLDatabaseModel,
>is there some tutorial about programming with database model of Protege OWL?
>
>At this moment I load one ontology after another, I get needed information
>with
>SPARQL, I experimenting with different ontologies and very frequently I have
>memory heap space problem. Can it be some problem with Protege memory
>management, may be in my case I have to use Jena API? If change all my
>ontologies
>to database format can I then use reasoner, will OWLDatabaseModel load
>everything
>to runtime memory, I mean will I still have the memory problems with
>database format.
>
>A lot of questions, I am really sorry. I just doubting what I have to use
>and what I have
>to study more deep.
>You every suggestion is very welcome.
>
>Thank you,
>Julia
>
>  
>
>>Hi Julia,
>>
>>I have suggested changing the repository file with the path of the
>>protege.owl ontology, not the import statement of the owl file, which
>>should remain like it is. Anyway, the effect is the same.
>>
>>I don't know why the Protege GUI comes up empty if you give Protege more
>>than 1GB of heap. I suppose you get some error in the console.
>>
>>If you are able to load the thesaurus in Protege OWL, why don't you
>>convert it to an OWL database project, because then you wouldn't have
>>the heap problem anymore.
>>
>>Tania
>>
>>
>>
>>Julia Dmitrieva wrote:
>>
>>    
>>
>>>Hello Tania,
>>>
>>>After the changing of Thesaurus.owl file with the
>>>good
>>><owl:imports
>>>rdf:resource="file:///C:/Program%20Files/Protege_3.2_beta/plugins/edu.stanford.smi.protegex.owl/protege.owl"/>
>>>I can load it in my java Project.
>>>
>>>May be have you some suggestions about why Protege cames with empty UI
>>>when I try to start it with runtime memory above 1G.
>>>
>>>Thank you,
>>>Julia
>>>
>>>Julia Dmitrieva wrote:
>>>
>>>
>>>      
>>>
>>>>Thank you, Tania.
>>>>
>>>>I try  to change the repositories for Thesaurus.owl.
>>>>But I have still the Out of memory problem.
>>>>I have changed the protege.lax file, and I
>>>>have now 2G runtime memory. But if I try to
>>>>run Protege with more than 1G memory than
>>>>Protege starts with empty screen (I have written
>>>>about this problem 2 month ago). Thus I can load
>>>>the thesaurus only with 0.9G of memory, but if
>>>>I try to do something with it than I have my
>>>>lovely problem : Exception in thread "AWT-EventQueue-0"
>>>>java.lang.OutOfMemoryError: Java heap spa
>>>>ce.
>>>>May be can I just change the Thesaurus.owl file with following
>>>>In place of:
>>>><owl:imports
>>>>rdf:resource="http://protege.stanford.edu/plugins/owl/protege"/>
>>>>have to be:
>>>><owl:imports rdf:resource="file:///C:/Program
>>>>Files/Protege_3.2_beta/plugins/edu.stanford.smi.protegex.owl/protege.owl"/>
>>>>
>>>>In the case of you first solution.
>>>>I am using Eclipse and I have added needed jar's to
>>>>the class path, I mean Protege.jar and other jar's from
>>>>protege/plugins.
>>>>
>>>>I citate from the The Protégé-OWL API - Programmer's Guide:
>>>>"If you are using a Java IDE such as Eclipse or IntelliJ, please select
>>>>the Protege installation folder as your project home. Then add all the
>>>>jar files from the installation to your project classpath. Set your
>>>>compiler output path to plugins/classes."
>>>>The probelem is that I am not really understand what it means.
>>>>
>>>>Do I have to create my project in Protege folder,
>>>>thus everething from Protege needs to be loaded?
>>>>
>>>>
>>>>Thank you for help,
>>>>Julia
>>>>
>>>>Tania Tudorache wrote:
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>>>Julia,
>>>>>
>>>>>The problem is that when you run the program that uses the Protege API,
>>>>>it does not find the Protege ontology, which is imported in the NCI
>>>>>thesaurus (the ontology is stored as a file "protege.owl" in the owl
>>>>>plugins directory). In order to solve this problem, you have two
>>>>>solutions:
>>>>>
>>>>>1. You execute the program in the same directory where Protege is
>>>>>installed.
>>>>>
>>>>>or
>>>>>
>>>>>2. You edit the repository file of your ontology and add the following
>>>>>line to it:
>>>>>
>>>>>
>>>>>file:/C:/MyPath/Protege_3.2_b331/plugins/edu.stanford.smi.protegex.owl/protege.owl?forceReadOnly=true
>>>>>
>>>>>You replace the path with the path to the local protege.owl file in the
>>>>>owl plugins directory. You can do this also from the Protege GUI, in
>>>>>the
>>>>>"OWL" Menu -> "Ontology repositories" -> "Project repositories" and add
>>>>>there a repository for a local file that points to the protege.owl in
>>>>>the owl plugins directory.
>>>>>
>>>>>Tania
>>>>>
>>>>>
>>>>>
>>>>>Julia Dmitrieva wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>>>Dear Protege list.
>>>>>>
>>>>>>I get problems with loading of NCI
>>>>>>Thesaurus.owl via Protege API.
>>>>>>
>>>>>>I can load all triples without problems, but after that
>>>>>>i get the following error message.
>>>>>>Loaded 950000 triples
>>>>>>Loaded 955000 triples
>>>>>>[ProtegeOWLParser] Importing
>>>>>>http://protege.stanford.edu/plugins/owl/protege (from
>>>>>>http://protege.stanford.edu/plugins/owl/protege [actual ontology at
>>>>>>this location: null])
>>>>>>[ProtegeOWLParser] Completed triple loading after 324485 ms
>>>>>>[TripleChangePostProcessor] Completed lists after 156 ms
>>>>>>[TripleChangePostProcessor] Completed anonymous classes after 656 ms
>>>>>>[TripleChangePostProcessor] Completed deprecated classes after 0 ms
>>>>>>[TripleChangePostProcessor] Completed properties after 94 ms
>>>>>>
>>>>>>:-( :-( :-( :-( And that  :-( :-( :-( :-(
>>>>>>
>>>>>>java.lang.IllegalArgumentException: null slot
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.assertNotNull(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.checkSlot(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.ArgumentCheckingFrameStore.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.ModificationFrameStore.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.cleandispatch.DefaultDispatch.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.cleandispatch.CleanDispatchFrameStore.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protege.model.framestore.FrameStoreAdapter.getDirectOwnSlotValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.framestore.OWLFrameStore.getDirectOwnSlotValuesConverting(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.impl.OWLUtil.getPropertyValues(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.impl.OWLUtil.getPropertyValue(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.impl.AbstractRDFSClass.getPropertyValue(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.classdisplay.AbstractOWLClassDisplay.getCommentText(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.classdisplay.AbstractOWLClassDisplay.getDisplayText(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.impl.AbstractOWLAnonymousClass.getBrowserText(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.triplestore.impl.DuplicateSuperclassesPostProcessor.removeDuplicateSuperclasses(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.triplestore.impl.DuplicateSuperclassesPostProcessor.<init>(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.triplestore.impl.TripleChangePostProcessor.postProcess(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.model.triplestore.impl.AbstractTripleStoreModel.endTripleStoreChanges(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.loadTriples(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.run(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.run(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.jena.parser.ProtegeOWLParser.run(Unknown
>>>>>>Source)
>>>>>> at edu.stanford.smi.protegex.owl.jena.JenaOWLModel.load(Unknown
>>>>>>Source)
>>>>>> at
>>>>>>edu.stanford.smi.protegex.owl.ProtegeOWL.createJenaOWLModelFromURI(Unknown
>>>>>>Source)
>>>>>> at Thesaurus.thesaurusMining.main(thesaurusMining.java:40)
>>>>>>
>>>>>>What I find very strange, is that the loading of thesaurus.owl is
>>>>>>going OK if I load it from Proptege application.
>>>>>>I mean, that it must also be possible to load it via OWL Proptege API.
>>>>>>I don't know what I am missing.
>>>>>>Do you have some suggestions.
>>>>>>
>>>>>>Thanks,
>>>>>>Julia
>>>>>>
>>>>>>
>>>>>>-------------------------------------------------------------------------
>>>>>>To unsubscribe go to
>>>>>>http://protege.stanford.edu/community/subscribe.html
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>            
>>>>>>
>>>>>_______________________________________________
>>>>>protege-owl mailing list
>>>>>protege-owl at lists.stanford.edu
>>>>>https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>
>>>>        
>>>>
>>>
>>>
>>>      
>>>
>>_______________________________________________
>>protege-owl mailing list
>>protege-owl at lists.stanford.edu
>>https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>
>>    
>>
>
>
>  
>




More information about the protege-owl mailing list