All Projects â†’ icgw â†’ FCA-Map

icgw / FCA-Map

Licence: GPL-3.0 license
💠 Ontology matching system based on formal concept analysis

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to FCA-Map

Web Client
Generic Linked Data browser and UX component framework. Apache license.
Stars: ✭ 105 (+320%)
Mutual labels:  semantic-web, knowledge-graph
Market-Trend-Prediction
This is a project of build knowledge graph course. The project leverages historical stock price, and integrates social media listening from customers to predict market Trend On Dow Jones Industrial Average (DJIA).
Stars: ✭ 57 (+128%)
Mutual labels:  semantic-web, knowledge-graph
Kbpedia
KBPedia Knowledge Graph & Knowledge Ontology (KKO)
Stars: ✭ 149 (+496%)
Mutual labels:  semantic-web, knowledge-graph
Semanticmediawiki
🔗 Semantic MediaWiki turns MediaWiki into a knowledge management platform with query and export capabilities
Stars: ✭ 359 (+1336%)
Mutual labels:  semantic-web, knowledge-graph
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+116%)
Mutual labels:  semantic-web, knowledge-graph
Multi Drug Embedding
Method for drug repurposing from knowledge graphs and literature
Stars: ✭ 18 (-28%)
Mutual labels:  semantic-web, knowledge-graph
melt
MELT - Matching EvaLuation Toolkit
Stars: ✭ 37 (+48%)
Mutual labels:  semantic-web, ontology-matching
awesome-ontology
A curated list of ontology things
Stars: ✭ 73 (+192%)
Mutual labels:  semantic-web, knowledge-graph
everything
The semantic desktop search engine
Stars: ✭ 22 (-12%)
Mutual labels:  semantic-web, knowledge-graph
LD-Connect
LD Connect is a Linked Data portal for IOS Press in collaboration with the STKO Lab at UC Santa Barbara.
Stars: ✭ 0 (-100%)
Mutual labels:  semantic-web, knowledge-graph
Schema Dts
JSON-LD TypeScript types for Schema.org vocabulary
Stars: ✭ 338 (+1252%)
Mutual labels:  semantic-web, knowledge-graph
semantic-python-overview
(subjective) overview of projects which are related both to python and semantic technologies (RDF, OWL, Reasoning, ...)
Stars: ✭ 406 (+1524%)
Mutual labels:  semantic-web, knowledge-graph
LinkedDataHub
The Knowledge Graph notebook. Apache license.
Stars: ✭ 150 (+500%)
Mutual labels:  semantic-web, knowledge-graph
Contextualise
Contextualise is a simple but effective tool particularly suited for organising information-heavy projects and activities consisting of unstructured and widely diverse data and information resources
Stars: ✭ 899 (+3496%)
Mutual labels:  semantic-web, knowledge-graph
PheKnowLator
PheKnowLator: Heterogeneous Biomedical Knowledge Graphs and Benchmarks Constructed Under Alternative Semantic Models
Stars: ✭ 74 (+196%)
Mutual labels:  semantic-web, knowledge-graph
Topic Db
TopicDB is a topic maps-based semantic graph store (using PostgreSQL for persistence)
Stars: ✭ 164 (+556%)
Mutual labels:  semantic-web, knowledge-graph
OLGA
an Ontology SDK
Stars: ✭ 36 (+44%)
Mutual labels:  semantic-web, knowledge-graph
teaching
Teaching material relevant to KGs
Stars: ✭ 61 (+144%)
Mutual labels:  semantic-web, knowledge-graph
CSV2RDF
Streaming, transforming, SPARQL-based CSV to RDF converter. Apache license.
Stars: ✭ 48 (+92%)
Mutual labels:  semantic-web, knowledge-graph
lsw2
OWL and Semantic Web toolkit for Common Lisp, used for construction and reasoning over ontologies and ontology-structured data
Stars: ✭ 22 (-12%)
Mutual labels:  semantic-web

FCA-Map: Identifying Mappings by Formal Concept Analysis

Workflow Status GitHub last commit (branch) Maven Central with version prefix filter license

Ontology matching system based on formal concept analysis.

Formal Concept Analysis (FCA) is a well developed mathematical model for clustering individuals and structuring concepts.

Table of Contents

Background

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.

Formal Context

Asgardian
Asgardian
Avenger
Avenger
Female
Female
Human
Human
Infinity Stones User
Infinity Stones User
Male
Male
Scientist
Scientist
Villain
Villain
Black Widow
Black Widow
✖ ✖ ✖
Captain America
Captain America
✖ ✖ ✖
Hela
Hela
✖ ✖ ✖
Hulk
Hulk
✖ ✖ ✖ ✖ ✖
Iron Man
Iron Man
✖ ✖ ✖ ✖ ✖
Thanos
Thanos
✖ ✖ ✖
Thor
Thor
✖ ✖ ✖

Concept Lattice

This concept lattice is derived from the above context, only reserved simplified extent and intent as follows.

complete-lattice

Install

See dependency graph.

I recommend IntelliJ IDEA for developing! :)

Usage

/****************************************
 *                                      *
 *    file:///src/main/java/Demo.java   *
 *                                      *
 ****************************************/

import cn.ac.amss.semanticweb.alignment.Mapping;
import cn.ac.amss.semanticweb.model.ModelStorage;
import cn.ac.amss.semanticweb.matching.MatcherFactory;
import cn.ac.amss.semanticweb.matching.LexicalMatcher;
import cn.ac.amss.semanticweb.matching.StructuralMatcher;

import org.apache.jena.vocabulary.OWL;
import org.apache.jena.vocabulary.RDFS;

public class Demo
{
  public static void main(String[] args) {
    ModelStorage source = new ModelStorage("src/test/resources/oaei/conference/Conference.owl");
    ModelStorage target = new ModelStorage("src/test/resources/oaei/conference/ekaw.owl");

    /************************** Lexical-level Matching ***************************/
    LexicalMatcher lm = MatcherFactory.createLexicalMatcher();

    lm.setSourceTarget(source, target);
    lm.setExtractType(true, true);

    Mapping lexicalOntClassMappings = new Mapping();
    lm.mapOntClasses(lexicalOntClassMappings);
    System.out.println(lexicalOntClassMappings);

    Mapping lexicalObjectPropertyMappings = new Mapping();
    lm.mapObjectProperties(lexicalObjectPropertyMappings);
    System.out.println(lexicalObjectPropertyMappings);

    /************************* Structural-level Matching *************************/
    StructuralMatcher sm = MatcherFactory.createStructuralMatcher();
    sm.setSourceTarget(source, target);
    sm.setExtractType(true, true);
    sm.addCommonPredicate(RDFS.subClassOf);
    sm.addCommonPredicate(OWL.disjointWith);
    sm.addAllSubjectAnchors(lexicalOntClassMappings);
    sm.addAllObjectAnchors(lexicalOntClassMappings);

    Mapping structuralOntClassMappings = new Mapping();
    sm.mapOntClasses(structuralOntClassMappings);
    System.out.println(structuralOntClassMappings);

    source.clear();
    target.clear();
  }
}

Contributing

See the contributing file.

PRs accepted.

FCA-Map for matching biomedical ontologies

See [liweizhuo001/FCA-Map] (no longer maintained), which system is primarily developed by Mengyi Zhao.

Other Systems

Acknowledgements

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.

References

  1. Identifying mappings among knowledge graphs by formal concept analysis. Guowei Chen, Songmao Zhang. OM@ISWC 2019: 25-35. [technical paper] [slides]

  2. FCAMap-KG results for OAEI 2019. Fei Chang, Guowei Chen, Songmao Zhang. OM@ISWC 2019: 138-145. [OAEI paper]

  3. FCAMapX results for OAEI 2018. Guowei Chen, Songmao Zhang. OM@ISWC 2018: 160-166. [OAEI paper]

  4. 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]

  5. Identifying and validating ontology mappings by formal concept analysis. Mengyi Zhao, Songmao Zhang. OM@ISWC 2016: 61-72. [technical paper]

  6. FCA-Map results for OAEI 2016. Mengyi Zhao, Songmao Zhang. OM@ISWC 2016: 172-177. [OAEI paper]

Maintainer

@icgw

License

GPLv3 © Guowei Chen

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].