Feature idea: org-roam-timeline

I write a lot of notes that relate to specific years, or ranges of years. For example, I might write a note called “Alfred Hitchcock” and give it a property :YEARS: 1899–1980. I also have notes on things like movies, where the year is the publication year, e.g. :YEARS: 1973 for a note called “The Wicker Man.”

At the moment, I’m only keeping track of these years aspirationally, since I don’t yet know how to handle them. But I could imagine a package (or even just a function) that could query these.

For example, I’d like to be able to run something like org-roam-timeline from within a note or node, and have it generate a temporary buffer with a list of other notes that have the same years. This way, I could run it on “Alfred Hitchcock” and it would list, among other things, “The Wicker Man,” since 1973 is between 1899 and 1980.

I’d also love to be able to be in, say, a note about “The Waste Land,” the poem from 1922, and click something or M-x something that would show a list of other things produced in 1922, like Ulysses.

Since these properties are already stored in org-roam.db, this shouldn’t be too hard, no? Does anyone have an idea about how best to go about this?