LACK Knowledge Graph

The LACK Knowledge Graph

The LACK knowledge graph is constructed through a three-phase pipeline of relation extraction from web pages, ontology alignment, entity URI generation, and relation graph construction, applied to relation extraction datasets from two investigative journalism sources covering climate lobbying.


KG at a Glance

Entities

Count
Total entities 27,945
Persons (lack:Person) 10,370
Collectives (lack:Collective) 17,604
Wikidata links (owl:sameAs) 8,280
DBpedia links 8,726

Relations

Count
Asserted (extracted) 47,450
Inferred (entailed) 142,737
Total after inferencing 188,862

Relation Extraction

Relationships between persons and organisations are extracted automatically from source text using a large language model pipeline guided by the LACK ontology.

Relation types extracted

Relation Count
lack:memberOf 13,427
lack:employedBy 5,463
lack:leadsAt 5,639
lack:contributedTo 6,722
lack:fundedBy 5,210
lack:hasPartner 2,515
lack:associatedWith 3,216
lack:sponsored 3,171
lack:derivedFrom 1,922
lack:founded 73
lack:hasMember 42
lack:acquired 37
lack:organised 13
Total 47,450

Attributes

Temporal bounds attached directly to entities (rather than to relations):

Attribute Count
lack:activeSince 652
lack:activeUntil 184
Total 836

Reified Statements

All extracted relations are represented as reified rdf:Statement instances, enabling provenance metadata (source URL, temporal bounds) to be attached to individual relation assertions. The total number of statements (51,848) exceeds the number of distinct relations because some entity pairs are attested by multiple sources.

Relation Statements
lack:memberOf 14,099
lack:contributedTo 7,012
lack:leadsAt 5,971
lack:employedBy 5,664
lack:fundedBy 5,624
lack:associatedWith 3,527
lack:sponsored 3,387
lack:hasPartner 2,990
lack:derivedFrom 1,602
lack:activeSince 1,238
owl:sameAs 363
lack:activeUntil 203
lack:founded 76
lack:hasMember 42
lack:acquired 37
lack:organised 13
Total 51,848

All relations can optionally carry temporal annotations (since, until), represented via RDF reification on the rdf:Statement node.

Evaluation

Evaluated on 300 relations extracted from 8 Desmog profile pages:

Criterion Yes Partly No Accuracy Accuracy (with partial)
True 279 18 3 0.93 0.99
Valid 272 12 16 0.907 0.95
Time info true 239 34 27 0.797 0.91

Ongoing work includes error analysis, ontology refinement, and evaluation on LobbyMap sources.


Entity Linking

Entities extracted from text are linked to canonical identifiers in Wikidata and DBpedia, enabling cross-source deduplication and enrichment. Entity linking is complete for v1.0.

Two methods were implemented and compared:

The multi-step workflow was selected for production. Coverage in the current release:

Count % of entities
Wikidata links 8,280 30%
DBpedia links 8,726 31%
Unlinked entities 19,665 70%

Entity links are represented using two distinct properties reflecting different certainty levels: owl:sameAs asserts identity between the LACK entity and the external URI, while rdfs:seeAlso indicates a related but not necessarily identical resource.

Link type Count
owl:sameAs 17,449
rdfs:seeAlso 104,757
Total 122,206

Inferencing

After the asserted graph is constructed, OWL inferencing is applied using the LACK ontology to materialise:

This adds 142,737 triples, bringing the total graph to 188,862 triples.

Count
Asserted triples 47,450
Inferred triples 142,737
Total 188,862

Inferred relation breakdown

Relation Count
lack:associatedWith 88,650
lack:hasMember 13,427
lack:hasEmployee 10,638
lack:hasContributor 6,722
lack:employedBy 5,639
lack:hasLeader 5,639
lack:hasFunder 5,210
lack:wasSponsoredBy 3,171
lack:hasPartner 2,515
lack:hasDerivation 961
lack:wasFoundedBy 73
lack:memberOf 42
lack:wasAcquiredBy 37
lack:wasOrganisedBy 13
Total 142,737