Graph-fca

Semlis logo

computes the concepts of a knowledge graph according to the theory of Graph-FCA, an extension of Formal Concept Analysis (FCA) for knowledge graphs (e.g., RDF graphs, conceptual graphs, power context families). The application takes as input the description of a knowledge graph in a text file, and returns the set of concepts in several formats: JSON, textual, SVG, and DOT. A number of options allow to control the production and display of concepts.


Please log in to perform a job with this app.


Usage

  1. upload the .p text file describing your knowledge graph (see demo and examples on Bitbucket)
  2. specify options if you like (see below)
  3. launch the application
  4. click on the SVG output file to visualize concepts

Graph-FCA options

[-quad] [-only-cores] [-l <int>] [-n <int>] [-minsupp <int>] [-maxsize <int>] [-ctx] [-sub] [-norel] [-ext] [-injective] [-supp]

  • -quad use quadratic mode for generation
  • -only-cores only compute and display core patterns
  • -l maximum number of generation levels
  • -n maximum number of variables in generated patterns
  • -minsupp filter concepts by minimum support (default 1)
  • -maxsize filter concepts by maximum size (nb. nodes)
  • -ctx include context graph in DOT output
  • -sub include subsumption relationships between concepts in DOT output
  • -norel displays relational edges as attributes inside nodes (e.g., to better see subsumptions relations)
  • -ext print extents for each node
  • -injective show only injective mappings in solutions
  • -supp print only concept support rather than object list
  • -help Display this list of options
  • --help Display this list of options

Source code

An open source repository is available on Bitbucket. It also contains a few examples (input and output).

Publications

  • Sébastien Ferré, Peggy Cellier. Graph-FCA: An extension of formal concept analysis to knowledge graphs, Discrete Applied Mathematics, 2019. DOI
  • Sébastien Ferré, Peggy Cellier. Graph-FCA in Practice. In Int. Conf. Conceptual Structures (ICCS), LNCS 9717, pages 107-121, 2016. Springer. PDF
  • Sébastien Ferré. A Proposal for Extending Formal Concept Analysis to Knowledge Graphs. In Int. Conf. Formal Concept Analysis (ICFCA), LNCS 9113, pages 271-286, 2015. Springer. PDF

In input :

royal.context.txt
% British royal family

:-
Charles & William & Harry & Georges : [ male ],
Diana & Kate & Charlotte : [ female ],
William & Harry : [ parent Charles & Diana ],
Georges & Charlotte : [ parent William & Kate ].



In output :

royal.concepts.svg

12/06/2019 : Version 2.0, for Graph-FCA tutorial
26/07/2016 : Version 1.0, initial version

How to use our REST API :

Think to check your private token in your account first. You can find more detail in our documentation tab.

This app id is : 132

This curl command will create a job, and return your job url, and also the average execution time

files and/or dataset are optionnal, think to remove them if not wanted
curl -H 'Authorization: Token token=<your_private_token>' -X POST
-F job[webapp_id]=132
-F job[param]=""
-F job[queue]=standard
-F files[0]=@test.txt
-F files[1]=@test2.csv
-F job[file_url]=<my_file_url>
-F job[dataset]=<my_dataset_name> https://allgo.inria.fr/api/v1/jobs

Then, check your job to get the url files with :

curl -H 'Authorization: Token token=<your_private_token>' -X GET https://allgo.inria.fr/api/v1/jobs/<job_id>