Re: [protege-user] Merging Imported Ontologies
Michael DeBellis <[email protected]>
| Newsgroups | gmane.comp.misc.ontology.protege.owl |
|---|---|
| Message-ID | <CALGFike+c3oeCzoJ8i9XiTYczvco-a1xFND7MUyh2rEbu1CcAA@mail.gmail.com> |
> > By the way, In case the updates are not always wanted, what I usually do > is placing the main ontology file and the ontologies which are to be > imported in a single folder and doing local imports. In this case, Protégé > usually addresses the local files using relative paths... Thanks, that's the kind of practical ideas I was looking for. On Thu, Feb 13, 2025 at 11:20 AM Hyacinth <[email protected]> wrote: > Well I'm not sure I'm understanding your point yet, but since merging a > specific version of an imported ontology with your own ontology will stick > the data from that specific version to your own ontology, and considering > that the discussion (as far as I understood) is about the case in which the > changes in the imported ontologies do matter and therefore import statement > is not removed, if the imported ontology gets updated, then the newer > version will be loaded from the web while the older version is locally > loaded too, possibly causing conflicts. It doesn't seem a sensible approach > at least to me. > > And if the ontologies are merged and the import statement is removed, then > there is no loading of data from outside the current file, and the ontology > is effectively offline and not updated which is seemingly not wanted here. > > By the way, In case the updates are not always wanted, what I usually do > is placing the main ontology file and the ontologies which are to be > imported in a single folder and doing local imports. In this case, Protégé > usually addresses the local files using relative paths so that if I move > the whole folder containing all of the ontologies (and the catalog file > containing the mapping of ontology IRIs to local paths) to another location > or share it with another person, the paths won't be broken. And any time I > want to see the updates to the imported ontologies, I temporarily move the > catalog file to another place or simply rename it, so that all the imported > ontologies will be loaded from the web and if I want to go offline again, I > take the catalog file back to it's former state. Anyway I'm not properly > understanding the purpose of merging, actually. > > On Thu, Feb 13, 2025 at 7:21 PM Michael DeBellis <[email protected]> > wrote: > >> Why not saving an offline version (as .ttl file(s), say) of the ontology >>> (or each of the ontologies) you want to import, and then importing the >>> files locally into your ontology (rather than importing them from the web)? >>> This way, if the imported ontology gets updated, the changes won't be >>> applied unless you manually update the saved version on your local system. >>> So you can update the imported ontology(s) at your will, but things won't >>> get out of hand if sudden dramatic changes happen to the imported ontology. >> >> >> That's what I do now and it's always worked for me, because usually what >> I care about is an application (which is built on an ontology) so issues >> about staying consistent with the imported ontologies never mattered much. >> I just use them and then I don't care if they change in the future because >> it won't affect the system, and that's usually what I care about. Also, >> usually when I import ontologies like SKOS or Prov, I don't use the entire >> ontology anyway so even more reason, I'm not that concerned about future >> evolutions. The difference is this time I'm helping someone who doesn't >> want to build an application but a new reusable vocabulary that imports >> several other vocabularies. So I thought it might make sense to be a big >> more rigorous and thoughtful about imports and to see if anyone had any >> suggestions, if there were issues I wasn't thinking about, etc. >> >> On Thu, Feb 13, 2025 at 3:54 AM Hyacinth <[email protected]> wrote: >> >>> Greetings >>> >>> Why not saving an offline version (as .ttl file(s), say) of the ontology >>> (or each of the ontologies) you want to import, and then importing the >>> files locally into your ontology (rather than importing them from the web)? >>> This way, if the imported ontology gets updated, the changes won't be >>> applied unless you manually update the saved version on your local system. >>> So you can update the imported ontology(s) at your will, but things won't >>> get out of hand if sudden dramatic changes happen to the imported ontology. >>> >>> I remember to have experienced some bugs in using local imports in the >>> past, though not remembering exactly what the problem was and not sure >>> whether it still exists. >>> >>> On Thu, Feb 13, 2025 at 3:44 AM Michael DeBellis <[email protected]> >>> wrote: >>> >>>> I was helping someone start a new research project today where she is >>>> going to start by leveraging several diverse vocabularies from different >>>> domains. I showed her how to import an ontology. >>>> >>>> When I do this, I typically merge the ontologies because in the past >>>> I've had issues with imported ontologies. In the worst case, I often >>>> download things like Prov to my local drive and then import that way. Of >>>> course that leads to problems if I share the ontology because that path >>>> won't exist on someone else's machine. So one bit of advice I gave my >>>> colleague was to not do that and import from the URL rather than their >>>> local drive. >>>> >>>> But I'm wondering should one still merge the ontologies in this >>>> situation or not? After I do the Merge I usually delete the ontology import >>>> that shows up at the bottom of the Active Ontology tab. That way there >>>> won't be any issues with loading an ontology and not being able to load it >>>> because a server for an imported ontology is down. On the other hand, it >>>> seems that to have an audit trail, it is better to leave those import >>>> statements. I think (although I haven't tested this) if you do the merge >>>> and an imported (and merged) ontology isn't available it won't matter >>>> because you can just say skip finding that import and the entities will >>>> still be there. >>>> >>>> A related issue is what if an imported ontology changes? Not merging >>>> and having the Import statement seems the "right" way to do it because you >>>> would get the new version. On the other hand, if you are under a deadline >>>> and you suddenly have to deal with a bunch of changes to one of the >>>> imported ontologies that could be a pain. >>>> >>>> Just wondering what people think are the trade offs here between: >>>> 1) Whether or not to merge an imported ontology and >>>> 2) Whether or not to delete the import statement if you do merge the >>>> imported ontology? >>>> >>>> Thanks in advance for any opinions, >>>> Michael >>>> https://www.michaeldebellis.com/blog >>>> _______________________________________________ >>>> protege-user mailing list >>>> [email protected] >>>> https://mailman.stanford.edu/mailman/listinfo/protege-user >>>> >>> _______________________________________________ >>> protege-user mailing list >>> [email protected] >>> https://mailman.stanford.edu/mailman/listinfo/protege-user >>> >> _______________________________________________ >> protege-user mailing list >> [email protected] >> https://mailman.stanford.edu/mailman/listinfo/protege-user >> > _______________________________________________ > protege-user mailing list > [email protected] > https://mailman.stanford.edu/mailman/listinfo/protege-user > _______________________________________________ protege-user mailing list [email protected] https://mailman.stanford.edu/mailman/listinfo/protege-user