Ontology matching system based on formal concept analysis.
Formal Concept Analysis (FCA) is a well developed mathematical model for clustering individuals and structuring concepts.
Formal concept analysis is based on mathematical order theory. (See the book for more details)
The following is an example of a formal context (about the characters of Marvel Cinematic Universe) and its derived concept lattice.
![]() Asgardian |
![]() Avenger |
![]() Female |
![]() Human |
![]() Infinity Stones User |
![]() Male |
![]() Scientist |
![]() Villain |
|
---|---|---|---|---|---|---|---|---|
![]() Black Widow |
✖ | ✖ | ✖ | |||||
![]() Captain America |
✖ | ✖ | ✖ | |||||
![]() Hela |
✖ | ✖ | ✖ | |||||
![]() Hulk |
✖ | ✖ | ✖ | ✖ | ✖ | |||
![]() Iron Man |
✖ | ✖ | ✖ | ✖ | ✖ | |||
![]() Thanos |
✖ | ✖ | ✖ | |||||
![]() Thor |
✖ | ✖ | ✖ |
This concept lattice is derived from the above context, only reserved simplified extent and intent as follows.
This project depends upon:
- Maven 3.6.1
- Jena 3.12.0
- Java 1.8.0_161
I recommend IntelliJ IDEA! :)
// Demo.java
import cn.amss.semanticweb.alignment.Mapping;
import cn.amss.semanticweb.model.OntModelWrapper;
import cn.amss.semanticweb.matching.LexicalMatcher;
import cn.amss.semanticweb.matching.MatcherFactory;
public class Demo {
public static void main(String[] args) {
String srcURL = "https://raw.githubusercontent.com/icgw/FCA-Map/master/src/test/resources/oaei/conference/Conference.owl";
String tgtURL = "https://raw.githubusercontent.com/icgw/FCA-Map/master/src/test/resources/oaei/conference/ekaw.owl";
OntModelWrapper source = new OntModelWrapper(srcURL);
OntModelWrapper target = new OntModelWrapper(tgtURL);
LexicalMatcher lm = MatcherFactory.createLexicalMatcher();
lm.setSourceTargetOntModelWrapper(source, target);
lm.setExtractType(true, true);
Mapping mappings = new Mapping();
lm.mapOntClasses(mappings);
lm.mapDatatypeProperties(mappings);
lm.mapObjectProperties(mappings);
System.out.println(mappings);
lm.close();
}
}
PRs accepted.
See FCA-Map@liweizhuo001 (no longer maintained), which system is primarily developed by Mengyi Zhao.
This work has been supported by the National Key Research and Development Program of China under grant 2016YFB1000902, and the Natural Science Foundation of China grant 61621003.
-
Identifying mappings among knowledge graphs by formal concept analysis. Guowei Chen, Songmao Zhang. OM@ISWC 2019: . [technical paper] [slides]
-
FCAMap-KG results for OAEI 2019. Fei Chang, Guowei Chen, Songmao Zhang. OM@ISWC 2019: . [OAEI paper]
-
FCAMapX results for OAEI 2018. Guowei Chen, Songmao Zhang. OM@ISWC 2018: 160-166. [OAEI paper]
-
Matching biomedical ontologies based on formal concept analysis. Mengyi Zhao, Songmao Zhang, Weizhuo Li, Guowei Chen. J. Biomedical Semantics 9(1): 11:1-11:27 (2018). [publisher page]
-
Identifying and validating ontology mappings by formal concept analysis. Mengyi Zhao, Songmao Zhang. OM@ISWC 2016: 61-72. [technical paper]
-
FCA-Map results for OAEI 2016. Mengyi Zhao, Songmao Zhang. OM@ISWC 2016: 172-177. [OAEI paper]
GPLv3 © Guowei Chen