Database consistency checking

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Database consistency checking

Citlalli Mejía Almonte
Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Csongor Nyulas
Administrator
Where have you read that? A little bit more context would be good.

In any case, if you could (fully) transform your database into an (meaningful!) ontology, you would be able to check the consistency of the model. This may not be practical in many cases, though.

Csongor


On 05/15/2017 07:06 AM, Citlalli Mejía Almonte wrote:
Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Josef Hardi
In reply to this post by Citlalli Mejía Almonte
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Citlalli Mejía Almonte
Thanks Josef. I will try this.

2017-05-15 18:34 GMT-05:00 Josef Hardi <[hidden email]>:
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user



_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Citlalli Mejía Almonte
Hi Josef,

I reviewed ontop website and did the tutorials; I even check for inconsistencies a database, but neither I understand how it exactly works (how does it know a database is inconsistent) nor I found the explanation. I also posted a question in the forum of ontop, but I haven't received an answer. Could you by chance give me some references, where this is explained? 

Thanks in advance

2017-05-17 15:31 GMT-05:00 Citlalli Mejía Almonte <[hidden email]>:
Thanks Josef. I will try this.

2017-05-15 18:34 GMT-05:00 Josef Hardi <[hidden email]>:
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user




_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Lorenz Buehmann
Consistency is always determined by a reasoning profile which comprises a set of consistency rules, e.g. OWL RL + the ontology that provides the semantics of the domain.

Hi Josef,

I reviewed ontop website and did the tutorials; I even check for inconsistencies a database, but neither I understand how it exactly works (how does it know a database is inconsistent) nor I found the explanation. I also posted a question in the forum of ontop, but I haven't received an answer. Could you by chance give me some references, where this is explained? 

Thanks in advance

2017-05-17 15:31 GMT-05:00 Citlalli Mejía Almonte <[hidden email]>:
Thanks Josef. I will try this.

2017-05-15 18:34 GMT-05:00 Josef Hardi <[hidden email]>:
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user





_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
-- 
Lorenz Bühmann
AKSW group, University of Leipzig
Group: http://aksw.org - semantic web research center

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Josef Hardi
In reply to this post by Citlalli Mejía Almonte
Hi Citlalli,

Quest (i.e., the name of the Ontop reasoner) implements a consistency check for two types of constraints: disjointness and functional property [1]. The way it is implemented is by using the query-answering technique [2].

The technique is pretty straightforward. Under an OBDA system, the disjointness is indicated whether the produced SQL join query will output a result or not. If the query returns a result then the ontology is inconsistent*) because there exists (at least) one data point that shares the same resource.

*) Depending on your viewpoint, you may also say that the database is inconsistent with respect to the ontology.

Similarly, the functional property is indicated whether the produced SQL join and unequal condition query will output a result or not. If it returns a result then the ontology is inconsistent because there exists (at least) one data point that contains more than one value for a same property.

Note that, for performance reasons, Quest will only give the answer “true/false” rather than providing the data points that cause the inconsistency.

There are several papers about description logics and data quality that go beyond the current Ontop implementation, such as [3-5].

Best,
Josef

Ref.:
[1] Calvanese, Diego, et al. "Ontology-based integration of cross-linked datasets." International Semantic Web Conference. Springer International Publishing, 2015.
[2] Calvanese, Diego, et al. "Data complexity of query answering in description logics." Twenty-Fourth International Joint Conference on Artificial Intelligence. 2015.
[3] Console, Marco, and Maurizio Lenzerini. "Data Quality in Ontology-based Data Access: The Case of Consistency." AAAI. Vol. 2014. 2014.
[4] Console, Marco, and Maurizio Lenzerini. "Reducing global consistency to local consistency in Ontology-based Data Access." Proceedings of the Twenty-first European Conference on Artificial Intelligence. IOS Press, 2014.
[5] Lembo, Domenico, et al. "Towards mapping analysis in ontology-based data access." International Conference on Web Reasoning and Rule Systems. Springer International Publishing, 2014.


On May 26, 2017, at 1:05 PM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi Josef,

I reviewed ontop website and did the tutorials; I even check for inconsistencies a database, but neither I understand how it exactly works (how does it know a database is inconsistent) nor I found the explanation. I also posted a question in the forum of ontop, but I haven't received an answer. Could you by chance give me some references, where this is explained? 

Thanks in advance

2017-05-17 15:31 GMT-05:00 Citlalli Mejía Almonte <[hidden email]>:
Thanks Josef. I will try this.

2017-05-15 18:34 GMT-05:00 Josef Hardi <[hidden email]>:
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user



_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Database consistency checking

Lorenz Buehmann
You should mention that the OWL ontology needs to contain those disjointness and functional property axioms and consistency is only checked against the ontology.

Hi Citlalli,

Quest (i.e., the name of the Ontop reasoner) implements a consistency check for two types of constraints: disjointness and functional property [1]. The way it is implemented is by using the query-answering technique [2].

The technique is pretty straightforward. Under an OBDA system, the disjointness is indicated whether the produced SQL join query will output a result or not. If the query returns a result then the ontology is inconsistent*) because there exists (at least) one data point that shares the same resource.

*) Depending on your viewpoint, you may also say that the database is inconsistent with respect to the ontology.

Similarly, the functional property is indicated whether the produced SQL join and unequal condition query will output a result or not. If it returns a result then the ontology is inconsistent because there exists (at least) one data point that contains more than one value for a same property.

Note that, for performance reasons, Quest will only give the answer “true/false” rather than providing the data points that cause the inconsistency.

There are several papers about description logics and data quality that go beyond the current Ontop implementation, such as [3-5].

Best,
Josef

Ref.:
[1] Calvanese, Diego, et al. "Ontology-based integration of cross-linked datasets." International Semantic Web Conference. Springer International Publishing, 2015.
[2] Calvanese, Diego, et al. "Data complexity of query answering in description logics." Twenty-Fourth International Joint Conference on Artificial Intelligence. 2015.
[3] Console, Marco, and Maurizio Lenzerini. "Data Quality in Ontology-based Data Access: The Case of Consistency." AAAI. Vol. 2014. 2014.
[4] Console, Marco, and Maurizio Lenzerini. "Reducing global consistency to local consistency in Ontology-based Data Access." Proceedings of the Twenty-first European Conference on Artificial Intelligence. IOS Press, 2014.
[5] Lembo, Domenico, et al. "Towards mapping analysis in ontology-based data access." International Conference on Web Reasoning and Rule Systems. Springer International Publishing, 2014.


On May 26, 2017, at 1:05 PM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi Josef,

I reviewed ontop website and did the tutorials; I even check for inconsistencies a database, but neither I understand how it exactly works (how does it know a database is inconsistent) nor I found the explanation. I also posted a question in the forum of ontop, but I haven't received an answer. Could you by chance give me some references, where this is explained? 

Thanks in advance

2017-05-17 15:31 GMT-05:00 Citlalli Mejía Almonte <[hidden email]>:
Thanks Josef. I will try this.

2017-05-15 18:34 GMT-05:00 Josef Hardi <[hidden email]>:
Hi Citlalli,

You can use the Ontop plugin in Protege to perform the inconsistency checking between your domain model (ontology) and database. Once you have installed the plugin and created the mapping model, select “Ontop > check for inconsistencies…”

Go to their website http://ontop.inf.unibz.it/ to learn more.

Best,
Josef

On May 15, 2017, at 7:06 AM, Citlalli Mejía Almonte <[hidden email]> wrote:

Hi,

Maybe this is not the place to ask this question, but I'm going to try it anyway. 

I have read that one of the ontology uses is to check consistency of databases, but I don't know how exactly that can be achieved. Does the entire database have to be transformed into ontology? Or are there any tools to do it? If the answer is both, which would be the best way to do it?

Thanks in advance
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user


_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user



_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user



_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
-- 
Lorenz Bühmann
AKSW group, University of Leipzig
Group: http://aksw.org - semantic web research center

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user