Skip to content

liweizhuo001/GraphBasedOntologyTask

Repository files navigation

Copyright 2017 by  Academy of Mathematics and Systems Science Chinese Academy of Sciences and Southeast University

GraphBaseOntology is a tool for mapping validation and repairing axioms of ontologies. 

Time: 11/30/2017  Author: Weizhuo Li and Xuefeng Fu   Mail: [email protected] or [email protected]

Software: Java 1.7 or higher. 
Hardware: 4GB RAM or more. The CPU is not limited, but we still hope that the CPU in your computer is as efficient as possible, which can reduce a lot of time consumption.

Supported models:	
These models employ graph-based ideas. Moreover, these graph-based methods are complete for DL-Lite onologies in the detection of incoherence[1].

Repair Mappings among ontologies: The key idea of this model is transfering the mappings and axioms into an integrated graph by the defined rules. Compared with the mainstream repaired methods, it reduced computing the the minimal incoherence-preserving subsets (MIPS) of ontologies and mappings to computing the minimal incoherence path-pairs (MIPPs) based on the transformed graph. Moreover, it elaborates three priniples to repair mappings so that it could remove more wrong mappings of alignments specially in the alignments generated by qualitative matchers.[5]
										
Repair TBox of ontology: This model mainly developed a graph-based method to deal with the debugging and revision of terminologies for a family of lightweight ontology languages, DL-Lite. Compared with the classic reasoners, it could reduce much time consumption.[2][4]
								
Repair ABox of ontology: This model mainly developed a graph-based method to deal with the debugging and revision of ABox for a family of lightweight ontology languages, DL-Lite.[3]

Usage:
At present, we mainly provide the interface for IDE such as Elipse. If you install it, you can import this project directly.

a)For reparing mappings, you need run MappingRevisionMainFrame_batch.java in the package kse.algorithm.forMapping.running. The repair result is saved in RepairedResults file. We also keep the repaired results of Alcomo and LogMap in this file.

b)For reparing TBox, you need run ScoringReviMain.java in the package kse.algorithm.forTBox.running. As it is repair model for one ontology, so you need to generate some Graph database by OWLToGraphDBDemo.java in kse.neo4j.running file. The onologies for test are saved in the ClassicOntology file.

c)For reparing ABox, you need run GraphReviMain.java in the package kse.algorithm.forABox.running. It is suitable for repairing the ontology with lots of ABox axioms, and you can download the ontology for testing by this link  http://www.cs.ox.ac.uk/isg/tools/UOBMGenerator/.

The key functions introduction:
kse.algorithm.forMapping.running.MappingRevisionMainFrame_batch.java: Call the Mapping-Revision method to repair the mappings. 

kse.algorithm.forTBox.running.InjectIncoherentByDisjointnessMain.java: Inject some disjointness axioms to make ontologies inconsistency.  
kse.algorithm.forTBox.running.ScoringReviMain.java: Call the Scored-Revision method to repair the TBox of ontologies.  

kse.algorithm.forTBox.running.InjectUnsatisfiableConceptsMain.java: Inject some disjointness axioms to make concepts unsatisfied .
kse.algorithm.forABox.revision.GraphReviMain.java: Call the Graph-Revision method to repair the ABox of ontologies.

kse.neo4j.running.OWLMappingToGraphDBDemo.java: Transform two ontology files and their mappings into a graph database.    
kse.neo4j.running.OWLToGraphDBDemo.java: Transform an ontology file into a graph database.   
kse.neo4j.running.Neo4jDemo.java: Traverse the information of graph database such as nodes and edges.
kse.neo4j.running.CypherDemo.java: Select the results by cypher languages.

Instructions:
For other repair tools, you can download the LogMap and ALcomo as follows:
LogMap: https://github.com/ernestojimenezruiz/logmap-matcher  runing file: LogMap2_RepairFacility.java in uk.ac.ox.krr.logmap2 package
ALcomo: http://web.informatik.uni-mannheim.de/alcomo/   runing file: ExampleXYZ.java in default package

More details for Reading:
[1] Lembo D, Santarelli V, Savo D F. "Graph-based ontology classification in OWL 2 QL" available at: 
https://www.dis.uniroma1.it/~savo/papers/ESWC-LSS-13.pdf
[2] Fu X, Qi G, Zhang Y, et al, "Graph-based approaches to debugging and revision of terminologies in DL-Lite" available at: 
http://www.sciencedirect.com/science/article/pii/S0950705116000691
[3] Qi G, Wang Z, Wang K, et al, "Approximating Model-Based ABox Revision in DL-Lite: Theory and Practice" available at:
http://www.aaai.org/ocs/index.php/AAAI/AAAI15/paper/download/9830/9252
[4] Fu X, Zhang Y, Qi G. "GrOD : Graph-based Ontology Debugging System" available at:
https://link.springer.com/chapter/10.1007/978-3-662-45495-4_8
[5] Li W, Zhang S, Qi G. "A graph-based approach for resolving incoherent mappings" available at:
https://content.iospress.com/articles/web-intelligence/web371

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages