Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Are All People Married? Determining Obligatory Attributes in Knowledge Bases

© 2018 Jonathan Lajus & Fabian M. Suchanek

An attribute is obligatory for a class in a Knowledge Base (KB), if all instances of the class have the attribute in the real world. For example, hasBirthDate is an obligatory attribute for the class Person, while hasSpouse is not. In this paper, we propose a new way to model incompleteness in KBs. From this model, we derive a method to automatically determine obligatory attributes – using only the data from the KB. Our algorithm can detect such attributes with a precision of up to 90%.


Full paper at the Web Conference (WWW), 2018


We ran our system on two datasets

Experimental Data

For each experiment, we report:

  • The results given by the different algorithms (here);
  • The gold standard used (here);
  • The per-instances evaluation for each methods and relations (here).

Raw results

In "data/Results/results" we provide tab-separated-value files of any class returned by any method, parameter and predicate.

IMPORTANT NOTE: here we only output upper-classes in the taxonomy

"predicate \t class" stands for "class(x) => \exists y. predicate(x, y)" and "predicate-1 \t class" stands for "class(y) => \exists x. predicate(x, y)"


We provide tab-separated-value files with the results of the experiments. They contain for every method, parameter, and predicate:

  • The number of true positives
  • The number of predicted instances
  • The number of instances derived from the gold standard
  • The precision, recall, and F1 per predicate
  • There is also their "NF" (for "New Facts") counterpart where we do not consider any instance already having the predicate in the KB (not used in the paper).

Source Code

The source code in the form of a Maven project can be found in the directory src

Dependencies not available in Maven are in src/lib


All the jar files used for the experiments can be found in the run directory.

Refer to this documentation for usage information.


Typing (TheWebConf2018 snapshot)




No releases published


No packages published