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] Importing one ontology to another in a java API

Timothy Redmond tredmond at stanford.edu
Wed Feb 22 13:49:34 PST 2012


On 2/22/12 3:39 AM, samane abdi wrote:
> Hi Timothy,
> Thanks for your reply. I have added the line that you mentioned. It 
> just shows that the ontology B was imported in the namespace window 
> with prefix "myPrefix" . However, when I open the metadata tab or 
> class tab or property tab, etc... there is no entity from ontology 
> B(is not imported) in Ontology A. How can I see the imported entities 
> in ontology A?

I am not sure what is happening here so I modified your code so that it 
utilizes ontologies on the internet so that we can compare results.  I 
ran the attached AddImport code and as a result I obtained the attached 
ontology called pizza-with-import.owl. You can also see from the 
attached figure that Animal (from the koala ontology) is a subclass of 
DomainConcept from the pizza ontology.

Do you get a different result with this code?  Do you get a different 
result when you point your own data?  Are their any exceptions?

>  In addition, I do not know how to add "class b" from ontology B as a 
> subclass of "class a" from ontology A. Is there any solution on this?

I didn't address this in my previous posts.  This is done with a small 
bit of code:

     public static void addSuperClass(OWLModel owlModel) {
         // from pizza
         OWLNamedClass domainConcept = owlModel.getOWLNamedClass("http://www.co-ode.org/ontologies/pizza/pizza.owl#DomainConcept");
         // from koala
         OWLNamedClass animal = owlModel.getOWLNamedClass("http://protege.stanford.edu/plugins/owl/owl-library/koala.owl#Animal");
         animal.addSuperclass(domainConcept);
     }


-Timothy


> Thanks,
> Samane
>
> On Tue, Feb 21, 2012 at 7:08 PM, Timothy Redmond 
> <tredmond at stanford.edu <mailto:tredmond at stanford.edu>> wrote:
>
>
>     Actually your code seemed to work perfectly on the first try.  The
>     one thing that might be an issue is that perhaps you expected to
>     find the modified ontology on disk whereas your code simply loads
>     it into memory.  I added a
>
>         owlModel.save(URI.create("file:///Volumes/Shared/ontologies/simple/pizza-with-import.owl"));
>
>
>     line (your file path will differ) and was able to examine the
>     modified version of the ontology on the disk.
>
>     -Timothy
>
>
>
>     On 2/21/12 7:15 AM, samane abdi wrote:
>>     Dear Experts,
>>
>>     I built two ontologies A and B. I want to import ontology B to
>>     ontology A and add "class b" and all its relations and
>>     individuals from Ontology B as a subclass of "class a" from
>>     Ontology A. How can I encode this in a java API(such as Eclipse).
>>
>>     Here is a fragment of my code which does not give me the desired
>>     result.
>>
>>     "public static void main(String[] args) throws
>>     OntologyLoadException, URISyntaxException {
>>     JenaOWLModel owlModel;
>>     //JenaOWLModel owlModel = ProtegeOWL.createJenaOWLModel();
>>        String DAL2Ontology = "file:///home/A.owl";
>>     owlModel = ProtegeOWL.createJenaOWLModelFromURI(DAL2Ontology);
>>     //String medicalOntology =
>>     "file:///home/sabdi/Applications/Protege3.4.8/MedicalOntology/Medical.owl";
>>     //if you want to use a custom prefix for the namespace of the
>>     imported ontology, uncomment the following line
>>     owlModel.getNamespaceManager().setPrefix(new
>>     URI("file:///home/B.owl#"), "myPrefix");
>>
>>     //create the ImportHelper
>>     ImportHelper importHelper = new ImportHelper((JenaOWLModel)owlModel);
>>
>>     //this is the URI from where your ontology is created
>>     //URI importUri =
>>     URIUtilities.createURI("file:///home/sabdi/Applications/Protege3.4.8/test/DAL2.owl");
>>     URI importUri2 = URIUtilities.createURI("file:///home/B.owl");
>>     //add the import (multiple imports can be added here)
>>     //importHelper.addImport(importUri);
>>     importHelper.addImport(importUri2);
>>     try {
>>        //do the actual import
>>     importHelper.importOntologies();
>>        //importHelper.importOntologies(true);
>>     } catch (Exception e) {
>>        e.printStackTrace();
>>     }
>>       }"
>>
>>
>>     Can you suggest me a solution or a tutorial for this?
>>
>>     Thanks,
>>     Samane
>>
>>     -- 
>>     Samane
>>
>>
>>     _______________________________________________
>>     protege-owl mailing list
>>     protege-owl at lists.stanford.edu  <mailto:protege-owl at lists.stanford.edu>
>>     https://mailman.stanford.edu/mailman/listinfo/protege-owl
>>
>>     Instructions for unsubscribing:http://protege.stanford.edu/doc/faq.html#01a.03
>
>
>     _______________________________________________
>     protege-owl mailing list
>     protege-owl at lists.stanford.edu <mailto:protege-owl at lists.stanford.edu>
>     https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
>     Instructions for unsubscribing:
>     http://protege.stanford.edu/doc/faq.html#01a.03
>
>
>
>
> -- 
> Samane
>
>
> _______________________________________________
> protege-owl mailing list
> protege-owl at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/protege-owl
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20120222/ab6ada5b/attachment-0001.html>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: AddImport.java
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20120222/ab6ada5b/attachment-0001.java>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pizza-with-import.owl
Type: text/xml
Size: 126609 bytes
Desc: not available
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20120222/ab6ada5b/attachment-0001.owl>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pizza-with-import.png
Type: image/png
Size: 136938 bytes
Desc: not available
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20120222/ab6ada5b/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pizza-with-import-02.png
Type: image/png
Size: 93284 bytes
Desc: not available
URL: <http://mailman.stanford.edu/pipermail/protege-owl/attachments/20120222/ab6ada5b/attachment-0003.png>


More information about the protege-owl mailing list