Just before I go to bed, I figure I’ll jot down some notes regarding Galago, as I’m sure I’ll forget a couple of them in the morning.
The storage of the data is going to be in a graph. I think this is fairly obvious. Using this, we can better fine-tune how specific one thing is to another.
We should allow the user of the API to search in many ways. Keyword searching, mime-types, and categories are a few that should not be left out. We should also allow data to be retrieved within a span of time.
Speaking of time, items should be set so that they have an expiration date and one or more dependencies. The dependency (perhaps almost all information?) should be in the form of a URI. So, a feed may push data with no expiration date but a dependency on a file, along with any relevant data, to the galago server, and the information would be cached and accessible, even if the program had been closed for awhile. If that URI no longer existed (say it was a node in the graph, or a file on the harddrive), the entry would be purged.
And it’s late, so enough rambling. Bed.