ontology imports management

147 views
Skip to first unread message

Adrian Brasoveanu

unread,
Apr 15, 2014, 10:33:59 AM4/15/14
to ontop...@googlegroups.com
Hello,

There are cases when I keep getting the following error:
The below list of predicates is unknown by the ontology - :

Typically when I want to do something like

abc:{Person} a foaf:Person

I tried to see what this means, but only found an old link to this error (2012)
(https://mailman.stanford.edu/pipermail/protege-owl/2012-September/019020.html).

If I look into the OBDA file format documentation, and some examples (especially the 
Movie Ontology and BSBM examples where you also use foaf, dbpedia and other sources)
it appears that each class, attribute, etc that will be used needs to be defined in the
OBDA file. 

Also according to this: https://github.com/ontop/ontop/wiki/ObdalibObdaFile
it appears that those extra extra declarations that need to be included in the OBDA file are
ClassDeclaration, ObjectPropertyDeclaration, DataPropertyDeclaration...

If however I add these declaration to the OBDA file, then I get an error that says ClassDeclaration not available anymore,
You can safely remove that part of the file....

What exactly do I need to do in order for these import to work right, so that I can also use the right namespaces
(foaf for foaf if I want to use foaf:Person)?

Also is there a way to do this automatically? I could only find the references to the 3 declarations in the documentation, 
but not really other examples.

Best regards,
Adrian

Guohui Xiao

unread,
Apr 15, 2014, 12:40:36 PM4/15/14
to Adrian Brasoveanu, ontop...@googlegroups.com
Hi, Adrian,

The document is a bit out dated.

"Prefix Declaration" is still needed, but the "Class, Data Property
and Object Property Declaration" are not needed any more.

Guohui
> --
> You received this message because you are subscribed to the Google Groups
> "ontop4obda" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to ontop4obda+...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



--
Guohui Xiao

Faculty of Computer Science
Free University of Bozen-Bolzano
Piazza Domenicani, 3
I-39100 Bolzano-Bozen BZ, Italy

http://www.ghxiao.org

Guohui Xiao

unread,
Apr 15, 2014, 1:04:05 PM4/15/14
to Adrian Brasoveanu, ontop...@googlegroups.com
If you import foaf ontology from your ontology, that should be enough.
Otherwise, could you send us the mappings and ontology so we can have a look?

Best,

Guohui

On Tue, Apr 15, 2014 at 7:01 PM, Adrian Brasoveanu
<adrian.b...@gmail.com> wrote:
> Ok. What about the first error? What do I need to do to be able to use
> foaf:Person like in the mapping abc:{Person} a foaf:Person ? Apparently
> importing FOAF is not enough as I get the error The below list of predicates
> is unknown by the ontology?

Guohui Xiao

unread,
Apr 17, 2014, 4:45:48 AM4/17/14
to Adrian Brasoveanu, ontop...@googlegroups.com
Hi, Adrian,

I can reproduce your problem. I think the problem is that ontop plugin
sometimes does not aware that the imports have been changed by the
Protege. We will look into this issue further.

I have a quick workaround now. After you add the imports and the
prefixes in the Protege (your step 2), save the ontology and restart
the Protege.
Now ontop should be able to handle the prefixes properly as in the
attached snapshots. I hope this will solve your problem.

Best,

Guohui

PS: I also cc this email to the mail list, as other users might have
the same issue.

On Wed, Apr 16, 2014 at 11:12 AM, Adrian Brasoveanu
<adrian.b...@gmail.com> wrote:
> Hello Guohoi,
>
> Thanks for your quick answer. I was travelling by train last night and had a
> bad Internet connection.
>
> Here are the steps I do when I get the error (they can be done in about 1
> minute):
>
> Step 1 - I create a new ontology, add a namespace to it and import 2
> ontologies,
> let's say FOAF and QB
>
> Step 2 - I put the right namespaces for FOAF and QB as Protege doesn't seem
> to make the binding correctly.
>
> Step 3 - I create a mapping like :{Person} a foaf:Person . and I get the
> error.
>
> I attach pictures for each step.
>
> It might be that I'm missing a simple step, but if I am missing a step, I
> don't find it in the new documentation.
>
> Best regards,
> Adrian
Screen Shot imports.png
Screen Shot mapping.png
Screen Shot prefixes.png

Adrian Brasoveanu

unread,
Apr 17, 2014, 5:30:52 AM4/17/14
to ontop...@googlegroups.com, Adrian Brasoveanu
Hi Guohoi,

Thanks! Your workaround is also ok for now.

Best regards,
Adrian

Jean-Baptiste Pressac

unread,
May 31, 2016, 4:33:57 AM5/31/16
to ontop4obda, adrian.b...@gmail.com
Hello,
I reproduced the "The below list of predicates is unknown by the ontology" error with Protégé 5.0.0 + Ontop 1.18.0 (I would be pleased to give you the version of the other plugins but the plugin list in the about menu of Protégé could not be copied):
  1. I opened this OWL file : https://gist.github.com/JBPressac/e8fa62b20819f1eef48e502eb2d3f2c0/1090da9b7b7e0179457eb1ce75523d8dce184fe5 in Protégé. 
  2. From Protégé, I removed the imported GND Ontology (http://d-nb.info/standards/elementset/gnd2016-01-12) and the ontology prefix gndo:
  3. I imported the DBPedia ontology (http://dbpedia.org/ontology/) and created an ontology prefix dbo:
  4. I saved the changes and closed Protégé
  5. I started again Protégé and opened prelib.owl (see the modified file : https://gist.github.com/JBPressac/e8fa62b20819f1eef48e502eb2d3f2c0/d882e88ddbcf606933c05ec56283ab84918b85a9)
  6. I tried to create a mapping with the predicate dbo:birthPlace but the error "The below list of predicates is unknown by the ontology" prevented me to do so (see screen capture below).
Note that the 

2016-05-31 10_00_12-prelib (http___mshb.huma-num.fr_prelib_1.0.0) _ [C__Users_ubo_Documents_Ontolog.png

Sarah Komla-Ebri

unread,
May 31, 2016, 9:13:13 AM5/31/16
to ontop4obda, adrian.b...@gmail.com
Hi,

it seems to be a problem related with the dbpedia ontology. 
At the link http://dbpedia.org/ontology/ the properties (for example birthPlace) are not defined directly (as you can see if you visualize the triples http://dbpedia.org/data3/.ntriples for example ) and for this reason they are not imported in Protege (with or without ontop plugin).
I tried to download and import the Protege ontology from here http://wiki.dbpedia.org/services-resources/ontology, making an import from file and in this case everything works correctly.
Cheers,

Sarah

Jean-Baptiste Pressac

unread,
May 31, 2016, 11:36:32 AM5/31/16
to ontop4obda
It works. Thank you, Sarah

Jean-Baptiste Pressac

unread,
Sep 11, 2019, 12:00:47 PM9/11/19
to ontop4obda
Hello,
There is a problem while importing BIO or FOAF ontologies in Protégé 5.5.0, the version of Protégé used for the Ontop 3.0.0 Protégé Bundle. This is due to the fact are that those popular ontologies are not OWL DL compliant (for a long time ago). The Protégé console displays error messages but Ontop mappings could be created. The problem is when you try to start the Ontop 3.0.0 reasoner. The following error message is displayed:

Error during reasoner initialization: java.lang.RuntimeException: DataProperty not found: http://xmlns.com/foaf/0.1/icqChatID.

2019-09-11 17_28_40-Ontop Initialization Error.png


I am not sure to understand the Lorenz Buehmann workaround :

c) even more simple don't import it but use the URIs only - this would
at least don't prevent you from using Protege.

But without importing the ontologies, Ontop Mapping Manager does not recognizes the foaf: or bio: prefixes.

Could be any solutions to this problem ?

Thanks,

Guohui Xiao

unread,
Sep 16, 2019, 6:04:44 PM9/16/19
to ontop4obda
Hi, you can declare prefixes in the "Ontology Prefixes" panel under the "Active Ontology" tab. See my screenshot.

Screenshot 2019-09-17 00.02.52.png

Reply all
Reply to author
Forward
0 new messages