Film Club Knowledge Graph (FCKG)

View repo & clone on GitHub →

Namespace msh: = http://example.org/ontologies/MovieSHACL3#  ·  All classes are owl:Class + sh:NodeShape

An open RDF knowledge graph of film award nominations across six major award systems — Oscars, BAFTA, Golden Globes, SAG, DGA, and PGA. The published foundation pairs an OWL/SHACL ontology with decades of historical nomination data, structured so any consumer can load, query, and enrich it using their own tools and data sources. Films and people carry external identifiers (IMDb, TMDB, Wikidata) that serve as the bridge to richer data — budgets, ratings, cast and crew credits, festival awards — enabling predictive modeling and longitudinal analysis.

6award systems
~20,600nominations
~6,300films
~8,300people
1927 – 2025coverage
Core domain
Award infrastructure
Forecasting
Supporting
object property
inverse / derived

Scroll to zoom · drag to pan · drag nodes to rearrange

Knowledge Graph Stack

4
Predictive Models user-defined
Best Picture Best Director Best Actor Best Actress any category

ML models trained on the enriched graph to predict award outcomes. The foundation's uniform schema across award systems makes precursor signals (SAG, BAFTA, DGA, PGA, Golden Globes) directly comparable as features.

3
Enrichment user-defined
budget & revenue TMDB · IMDb · RT · Metacritic ratings cast & crew credits festival awards (Cannes, Venice, Berlin) biographical data genres & production companies

Added as RDF overlays using the foundation's external identifiers (TMDB, IMDb, Wikidata IDs). The published graph defines the schema slots but leaves values for consumers to populate.

2
Inference
Person → nominatedFor → Film cross-system category alignment via AwardConcept Film → nominations (inverse of hasFilm) precursor award tracking

Derived automatically from the foundation via SHACL rules and inverse paths. Nominations are not silos — they connect films, people, and award systems into a unified graph that can be queried across systems without ad-hoc joins.

1
Foundation published
Ontology · Schema
owl:Class definitions sh:NodeShape / PropertyShape SHACL validation SPARQL inference rules namespace msh:
Instance Data
Oscars · ~10,600 noms BAFTA · ~4,800 Golden Globes · ~3,700 SAG · ~780 DGA · ~500 · PGA · ~270 ~6,300 Films ~8,300 People

The published data foundation. The ontology defines the shared vocabulary; the instance data populates it. All nomination files share the same Film and Person URIs — a person nominated at the Oscars and the BAFTAs is the same node in the graph.

Property Reference

Class Object Properties (→ target class) Required datatype props Optional datatype props
Film hasDirector, hasActor, hasProducer,
hasWriter, hasComposer, hasCinematographer (→ Person)
hasGenre (→ Genre) · hasIdentifier (→ Identifier)
title · releaseYear tmdbId, imdbId, wikidataId, runtime, language, country, productionCompany, budget, revenue, tmdbRating, tmdbPopularity, originalLanguage, releaseDate, imdbRating, rottenTomatoesScore, metacriticScore, mpaaRating, boxOffice, synopsis, enrichedAt
Person hasIdentifier (→ Identifier)
nominatedFor (→ Film, SPARQL-derived)
fullName birthYear, birthPlace, biography, tmdbPersonId, entityType ∈ {PERSON, ORGANIZATION}
Nomination hasCeremony [1] (→ AwardCeremony)
hasCategory [1] · hasCanonCategory (→ AwardCategory)
hasFilm (→ Film) · hasNominee (→ Person)
yearFilm · winner nomineeType ∈ {FILM, PERSON, COLLABORATION}, previousNominations, previousWins, submittingCountry, note
AwardSystem systemName · shortName description
AwardCeremony hasAwardSystem [1] (→ AwardSystem) yearCeremony · ceremonyName ceremonyDate
AwardCategory hasAwardSystem [1] (→ AwardSystem)
realizationOf (→ AwardConcept)
categoryName description
AwardConcept description
Identifier scheme [1] (→ IdentifierScheme) value
IdentifierScheme instances: imdb · tmdb · wikidata
ForecastSet hasForecast (→ Forecast) forecastSetSystem, forecastSetCategory, forecastSetYear, forecastSetLoggedAt, forecastSetModelType, forecastSetFeatures, forecastSetAUC, forecastSetTop1Pct, forecastSetSource ∈ {model, kalshi_market}
Forecast predictsNomination (→ Nomination) forecastQuestion · forecastProbability · loggedAt

[1] = exactly one required  ·  Dotted arrows = inverse navigation paths (sh:inversePath) or SPARQL-derived properties  ·  Dashed arrows = subClassOf inheritance